DonutWorks / Ari

0 stars 0 forks source link

단위테스트가 실패하면 구체적인 원인을 파악할 수 있어야 한다. #341

Open shaynekang opened 9 years ago

shaynekang commented 9 years ago

단위테스트가 실패한다면, 에러 메시지를 통해 한 눈에 원인을 파악할 수 있어야 빠른 디버깅이 가능합니다. 가장 안 좋은 사례는 다음과 같죠.

Failure/Error: expect(actual).to eq(true)

expected: true
     got: false

(compared using ==)

이것만 보고는 어떤 부분이 잘못되었는지 알 수가 없습니다. 그런고로 단순한 true / false 비교보다, 구체적으로 어떤 기대값이 나와야 하는데, 어떤 값이 나와서 실패했다는 에러 메시지가 나오도록 Expectation을 작성해야 합니다.

몇몇 단위테스트는 구체적으로 값을 비교할 수 있음에도, true / false 내지는 nil / not nil 정도만 처리한 것 같습니다. 코드를 살펴보고 이런 부분들을 리펙토링 하면 좋겠네요. ㅎㅎ