더북(TheBook)

하나의 테스트를 삭제, 이동, 변경해도 다른 테스트는 영향받지 않고 잘 실행되는가?

단위 테스트는 보통 상태 값을 공유하지 않고 독립적으로 실행하지만, 통합 테스트는 데이터베이스나 API 같은 외부 자원을 자주 사용한다. 외부 자원을 사용하면 테스트 간에 의존성이 생길 수 있다. 예를 들어 여러 테스트가 값을 공유할 때는 테스트를 정해진 순서대로 실행하지 않으면 결과가 올바르게 나오지 않을 수 있다.

Warning | 테스트는 경력자에게도 쉽지 않다

숙련된 단위 테스트 개발자라고 할지라도 처음 접하는 도메인을 대상으로 단위 테스트를 작성하는 것은 쉽지 않은 일이다. 아무리 빨라도 30분 이상의 시간이 걸릴 것이다. 도메인이 생소하면 테스트 작성에 시간이 걸릴 수 있고, 이는 당연한 이치다. 그래서 작업 단위를 파악하는 일이 중요하다. 일단 작업 단위의 진입점과 종료점을 파악하면 두 번째 테스트부터는 매우 쉽게 작성할 수 있다.

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