더북(TheBook)

2.5.3 USE 전략

테스트를 살펴보니 문제가 하나 보인다. 바로 테스트 코드 이름이 너무 불친절하다는 것이다. 간과하기 쉽지만 테스트 코드에서 이름을 잘 짓는 것은 무엇보다 중요하다. 제목만 읽어도 무엇을 하려고 하는지 바로 알아차릴 수 있게 말이다. 테스트 이름을 잘 지어야 코드를 읽는 이의 머릿속을 물음표가 아닌 느낌표로 채울 수 있다. 이름을 지을 때 고려해야 할 세 가지 주요 요소는 다음과 같다.

테스트하려는 대상(Unit: 지금은 verifyPassword() 함수)

입력 값이나 상황에 대한 설명(Senario: 결과로 false를 반환하는 상황)

기댓값이나 결과에 대한 설명(Expectation: 에러 메시지를 반환)

한마디로 표현하자면 이렇다. ‘테스트 대상을 명시하고, 어떤 입력이나 상황이 주어지면 어떤 결과로 이어져야 하는지 간결하고 명확하게 적는다.’

Note ≣ | USE 이름 유래

이 책을 검토할 때 검토자 중 한 명인 타일러 렘키(Tyler Lemke)는 이 방법을 잘 설명하는 멋진 이름을 추천했다. 그렇게 테스트할 대상(Unit under test), 시나리오(Scenario), 기대 동작(Expectation)을 합쳐 USE라는 이름이 탄생했다. 기억하기도 쉽고 무엇보다 마음에 쏙 든다. 이 자리를 빌려 타일러에게 감사의 뜻을 전한다.

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