티스토리 뷰

 test 코드를 작성하던 중 org.mockito.exceptions.misusing.UnnecessaryStubbingException

 Please remove unnecessary stubbings or use 'lenient' strictness. More info: javadoc for UnnecessaryStubbingException class. 라는 에러가 떴다.

 

에러가 나는 쪽 소스는 version에 따라 실행하는 로직이 달랐는데 메소드 모두 스터빙 처리를 해줘서 나는 에러였다.

if (ObjectUtils.isEmpty(version)) {
     findObject = repository.findTopByCode(code);
} else {
     History history = historyRepository.findByVersion(version);
     findObject = repository.findById(history.getId()));
}

 

 

 불필요한 스터빙은 하지 않도록 되어있는데, 스터빙을 해놨기 때문에 나는 에러이고 이를 해결하기 위해서는 lenient를 사용하면 에러를 해결 할 수 있다.

기존 소스
given(repository.findTopByCode(testId)).willReturn(testObject);

수정 소스
lenient().when(repository.findTopByCode(testId)).thenReturn(testObject);

 

댓글
링크
최근에 올라온 글
Total
Today
Yesterday