본문 바로가기

TIL(Today I Learned)

TIL-231018(Jacoco로 코드 커버리지 측정(3))

📝오늘 공부한 것

  • 실전프로젝트 - '행동대장' 테스트 코드 작성하기
  • 커리어톤 참여하기

 

📌 테스트 코드 결과

JUnit과 Mockito를 활용하여 프로젝트의 테스트코드를 작성하였고, Jacoco를 이용해 total 코드 커버리지를 90% 이상 달성을 목표로 하였다. 

 

[ 코드 커버리지 리포트 ]

결과적으로 코드 커버리지 Total 95%를 달성하였다!!!

 

그러나 모든 요소들이 90% 이상 달성하는 것을 어려웠다. 팀원들과 함께 진행한 협업 프로젝트다 보니, 내가 직접 만들지 않은 클래스에서 사용되지 않는 코드들이 있어 완벽한 커버리지를 달성하지 못하였다.

 

이전에는' fostman으로 확인했을 때 잘 나오면 되는거 아니야? 왜 테스트 코드를 또 작성하지?'라고 생각했었는데, 막상 테스트 코드를 작성해 보니, 수정해야 할 코드들도 보이고 필요 없어 보이는 코드도 보였다.

또, 테스트코드를 작성하고 실행을 해보니 어떤 부분이 사용되었는지를 한눈에 파악할 수 있어서 좋았다. 그 결과 나의 의도대로 잘 동작하는 지 확인할 수 있어서 실수를 줄일 수 있다는 인사이트를 얻을 수 있었다.

 

 

느낀 점🤔

테스트코드를 작성하면서 단순히 커버리지를 채우기 위해 넣은 코드들도 있었다. 그래서 코드 커버리지가 높다고 해서, 좋은 코드라고 볼 수 없다는 것을 배웠다.

이번 테스트코드 작성 경험을 바탕으로, 다음 프로젝트부터는 개발 과정과 동시에 테스트 코드를 작성해야겠다는 생각이 들었다. 

 

다음 도전💪🏻

소셜로그인과 이메일인증 관련 단위테스트 코드는 작성하지 못했다.  이 부분에 대해서는 더 공부해서 테스트를 하고, JMeter를 활용한 성능 테스트도 시도해 볼 것이다.

또한, 좋은 테스트 코드에 대해서 더 공부하고, 그 결과를 바탕으로 이번에 작성한 테스트 코드들을 재검토하고 수정해 봐야겠다.

 

 

 

Jacoco 설정하기
👉🏻 2023.10.12 - [TIL(Today I Learned)] - TIL-231012(Jacoco로 코드 커버리지 측정(1))
테스트 실행 시 예외 메시지를 가져오지 않음
👉🏻 2023.10.13 - [TIL(Today I Learned)] - TIL-231013(테스트 실행 시 예외 메시지를 가져오지 않는 문제)
의미 있는 테스트 코드 작성이란 무엇일까..
👉🏻 2023.10.17 - [TIL(Today I Learned)] - TIL-231017(Jacoco로 코드 커버리지 측정(2))
테스트 코드 결과
👉🏻 2023.10.18 - [TIL(Today I Learned)] - TIL-231018(Jacoco로 코드 커버리지 측정(3))