SSAFY11th-book-study / book-study

SSAFY 11기 6반의 '토비의 스프링 스터디'
0 stars 0 forks source link

[2.3.2] 상호 의존 관계에 있는 기능의 테스트 방법 #21

Closed gmelon closed 8 months ago

gmelon commented 8 months ago

읽다가 평소 비슷한 고민을 했었던 주제라 같이 가볍게 생각해보면 좋을 것 같아서 올려봅니다.

책에서 UserDaodeleteAll()getCount() 기능을 추가하면서

deleteAll() 자체도 아직 검증이 안 됐는데 무턱대고 다른 테스트에 적용할 수는 없다. 그래서 getCount()를 함께 적용해보자. (중략) 그런데 getCount() 는 잘 동작하는지 어떻게 믿을 수 있을까? (중략) 검증 안 된 두개를 붙였는데 우연히 테스트가 통과한다고 안심하는 것은 바람직하지 못하다.

라고 이야기하고 있습니다.

그리고 이에 대한 해결책으로 deleteAll() 직후에는 getCount()가 0이고 add() 한 뒤에는 1 이 나온다면 getCount()deleteAll() 기능이 제대로 동작하는 것으로 판단하자고 (뒤에서 더 자세하게 테스트 하기는 하지만) 하고 있습니다.

저의 경우 평소에도 테스트를 작성하며 이런 비슷한 상황 때문에 별 의미없는 테스트를 작성하거나, 비효율적인 테스트를 작성하게 되는 경우가 종종 있었습니다. 혹시 비슷한 상황이 있으셨다면 어떤 상황이었는지, 그때 하셨던 고민과 결과가 궁금합니다.

hj-k66 commented 8 months ago

private 메소드를 테스트하는 경우 https://mangkyu.tistory.com/235

gmelon commented 8 months ago