더북(TheBook)
        it('has exactly one error', () => {
            expect(errors.length).toBe(1);
        });
    });
});

중복 코드는 최소한으로 줄였지만, 이제 각 테스트를 이해하려면 errors 배열이 어디에서 어떻게 생성되었는지 확인해야 한다.

한 단계 더 나아가 기본적인 시나리오를 몇 가지 더 추가하면서 테스트 케이스가 늘어났을 때도 확장 가능한 구조인지 확인해 보자.

예제 2-15 테스트 추가하기

// __tests__/password-verifier1.spec.js
describe('PasswordVerifier', () => {
    let verifier;
    beforeEach(() => (verifier = new PasswordVerifier1()));

    describe('with a failing rule', () => {
        let fakeRule, errors;


신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.