작성
·
46
0
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? 예
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 아니오
3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예
[질문 내용]
여기에 질문 내용을 남겨주세요.
안녕하세요.
Junit5로 assertThrows테스트를 하고 있습니다.
원래는 다른 분들처럼 assertThrows만 작성했습니다. (리턴 없는 형태)
테스트는 성공하는데 에러 로그가 전~혀 하나도 뜨지 않습니다.
고민하다가 에러 내용을 받아서 soutv로 뿌려줘서 확인했습니다.
assertEquals로 비교하는게 맞나요?
아니면 제가 모르는 Junit5 사용법이 따로 있는건지요?
gpt, 구글 등등 다 검색해봐도 답을 알 수 없어서
고민하다가 질문 올립니다.
조언 부탁드립니다 감사합니다~
답변 1
0
안녕하세요. 김아란님, 공식 서포터즈 y2gcoder입니다.
테스트 코드에서는 jUnit5 의 assertThrows 나 Assertions의 assertThatThrownBy().isInstanceOf()를 통해서 에러의 발생 유무를 체크하는 식으로 할 수 있습니다. 테스트 코드를 짜는 이유가 자동화를 하기 위해서임을 생각해보면 해당 테스트가 통과한다면 저희가 제시한 테스트 케이스에서는 예외를 던지고 있는게 맞겠다는 확신을 얻을 수 있습니다 🙂 (말은 이렇게 하지만 저도 테스트 코드를 돌리고 직접 구동해서 확인까지 해보는 것 같습니다 😅)
에러 로그는 테스트 코드와는 약간 별개의 문제라고 생각합니다! 필요하시다면 에러가 발생했을 때, 로그를 개발자가 명시적으로 남겨주시는 것이 좋습니다. MVC 2편을 학습하시게 되면 스프링에서 제공하는 다양한 에러 처리 방법을 학습하시게 됩니다. 이때 학습한 에러 처리 방법 중간에 로그를 삽입하는 방법을 고려해보시면 좋을 것 같습니다!
감사합니다.