더북(TheBook)

2.2 라이브러리, 검증, 러너, 리포터

제스트는 다음 역할을 한다.

테스트를 작성할 때 사용하는 테스트 라이브러리 역할

테스트 내에서 expect 함수를 사용하는 검증(assertion) 라이브러리 역할

테스트 러너(runner) 역할

테스트 실행 결과를 보여 주는 테스트 리포터(reporter) 역할

또 제스트는 목(mock), 스텁(stub), 스파이(spy) 등을 생성할 수 있는 격리(isolation) 기능도 지원한다. 아직 살펴보지 않은 기능이지만, 이후 장에서 다룰 예정이다.

다른 언어에서는 테스트 프레임워크가 라이브러리, 검증, 러너, 리포터 등 역할을 모두 수행하는 것이 일반적이다. 하지만 자바스크립트에서는 이러한 기능 중 일부만 제공하는 테스트 프레임워크가 많다. 이는 ‘한 가지 기능에 충실할 것’이라는 철학 때문일 수도 있고, 다른 이유가 있을 수도 있다. 어쨌든 제스트는 이 모든 기능을 하나로 통합한 몇 안 되는 테스트 프레임워크 중 하나다. 자바스크립트 커뮤니티는 매우 활발한 문화로 오픈 소스에 크게 기여하고 있는데, 각 카테고리마다 여러 툴이 있어 이를 조합해서 나만의 툴킷을 만들 수 있다.

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