2.5.6 코드 구조로 알 수 있는 테스트 정보
describe() 함수의 또 다른 좋은 점은 중첩해서 사용할 수 있다는 것이다. 따라서 describe() 함수를 사용하여 테스트 시나리오를 설명하는 또 다른 구역을 만들어 그 아래에 테스트를 작성할 수 있다.
예제 2-7 추가 정보를 표현하는 중첩 구조
// __tests__/password-verifier0.spec.js
describe('verifyPassword', () => {
describe('with a failing rule', () => {
test('returns errors', () => {
const fakeRule = () => ({
passed: false,
reason: 'fake reason',
});
const errors = verifyPassword('any value', [fakeRule]);
expect(errors[0]).toContain('fake reason');
});
});
});