더북(TheBook)

이전 장에서 산술 평균을 계산하는 간단한 예제 클래스 ScoreCollection에 대한 테스트 코드를 작성했습니다. 이 코드를 실행하면 JUnit 기초에 대한 좋은 지침을 얻을 수 있습니다.

하지만 팻은 그다지 감동하지 않았습니다. “겨우 숫자들의 평균을 내는 작은 클래스를 테스트하는 수준이잖아? 실제 코드는 그렇게 간단하지 않아.”라고 말이죠.

이전 장에서 다룬 내용이 JUnit에 익숙해지는 것에 가깝기는 하지만 팻이 한 말 역시 사실입니다. ScoreCollection 클래스를 좀 더 테스트할 수도 있지만 이제는 실전 시스템에 가까운 코드를 테스트해 볼 차례입니다.

이 장에서는 좀 더 시간을 들여 테스트하길 원하는 알찬 코드를 알아봅니다. 코드를 분석하여 코드의 한 가지 경로를 커버하는 테스트를 작성하는 데 집중합니다. 그다음 코드를 따라 두 번째 경로를 검증하는 두 번째 테스트를 작성해 볼 것입니다. 특히 두 번째 테스트는 첫 번째 테스트를 해결하고 나면 이후 테스트가 얼마나 더 쉬운지 보여 줄 것입니다.

또 테스트 구조도 살펴봅니다. 테스트 배치에 대해 준비-실행-단언(AAA, Arrange-Act-Assert) 암기법도 좀 더 탐구해 볼 것입니다. 그리고 공통으로 사용되는 초기화 코드를 한곳에 모을 수 있는 @Before 애너테이션도 알아봅니다.

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