2.6 beforeEach( ) 함수 사용
이 책에서 아직 beforeEach() 함수는 소개하지 않았다. 이 함수와 함께 사용되는 또 다른 함수로 afterEach()가 있는데, 이 함수는 각 테스트에 필요한 특정 상태를 설정하거나 해제할 수 있다. beforeAll()과 afterAll() 함수도 있지만, 단위 테스트를 작성하는 시간적 비용을 고려하여 이번 시나리오에서는 최대한 사용하지 않으려고 한다. 이것은 후반부에서 더 자세히 다룰 예정이다.
beforeEach() 함수는 각 테스트가 실행되기 전에 한 번씩 실행되기 때문에 중복 코드를 제거하는 데 도움이 된다. 다음 예제는 이 함수를 여러 번 중첩해서 사용할 수 있는 방법을 보여 준다.
예제 2-13 beforeEach() 함수를 2뎁스로 사용하기
// __tests__/password-verifier1.spec.js
describe('PasswordVerifier', () => {
let verifier;
beforeEach(() => {
verifier = new PasswordVerifier1(); ➊
});