[Test] 빠른 테스트와 단위(소형) 테스트 작성
·
프로젝트 기록/TestCode
🌏 고민의 시작 많은 테스트 코드를 작성하게 되면서, 외부 라이브러리(H2, Mock) 에 의존한 중형(통합) 이상의 테스트 코드가 증가하게 되었습니다. 현재 소규모의 프로젝트 이지만 거대한 프로젝트가 된다면, 많은 시간을 테스트 코드 검증에 기다림이 필요하다는 것을 느끼게 되었습니다. 결론적으로, 외부 라이브러리 의존을 최소화한 많은 소형(단위) 테스트 코드 작성해보고 싶은 욕구? 가 생기게 되었습니다. 🌏현재 기술 스택 현재 진행 중인 프로젝트에서 사용하고 있는 기술 스택에 대하여 대략 적어보면, 아래와 같은 기술 스택을 사용하고 있습니다. spring data JPA springboot spring security Mysql 그럼 이제 이 라이브러리에 의존을 최소화한 테스트 코드 작성을 해보겠습니다..
[Test] Void를 반환하는 테스트는 어떤 방식으로 검증할까?
·
프로젝트 기록/TestCode
문제 테스트 코드를 작성하는 도중 void를 리턴하는 방식의 코드를 작성하게 되었다. Mock 을 사용하지 않는 순수 자바 코드만을 이용한 테스트를 작성하는 것을 유지했기 때문에 고민을 하게 되었다. 해결 방법 AssertThatCode 을 이용하는 방법 assertThatCode(()->certificationService.send(email, 1,testUuidHolder.random())) .doesNotThrowAnyException(); assertThatCode 는 정상적 동작을 검증하는 코드에 많이 사용된다. 테스트 하고자 하는 메서드를 실행하고 예외가 발생하지 않으면 되는것 이다. 하지만, 이러한 작성은 문제가 될 수 있다 생각했다. 단순히 커버리지를 높이는 테스트에 불과하기 때문이다. 내..