프레임웤, DB같은 외부요소에 종속되지않고 언어 자체적으로 로직을 검증하는게 참된 의미의 단위테스트라는데,
백엔드 로직 대부분이 DB관련 로직인데 단위테스트를 뭐 어떻게 하라는건가요.
스프링 기능을 사용하지않을라면 Mock을 사용해야하고,
DB기능을 사용하지않을라면 자체적으로 컨테이너객체를 만들어야하나요?
걍 @SpringbootTest붙여서 통합테스트만 하면 끝 아니였나요
프레임웤, DB같은 외부요소에 종속되지않고 언어 자체적으로 로직을 검증하는게 참된 의미의 단위테스트라는데,
백엔드 로직 대부분이 DB관련 로직인데 단위테스트를 뭐 어떻게 하라는건가요.
스프링 기능을 사용하지않을라면 Mock을 사용해야하고,
DB기능을 사용하지않을라면 자체적으로 컨테이너객체를 만들어야하나요?
걍 @SpringbootTest붙여서 통합테스트만 하면 끝 아니였나요
디비 들어갔는데 어케 유닛테스트임
유닛테스트는 100번 실행해도 인풋이 같으면 반드시 결과가 똑같이 나오는 결정론적인 테스트임. 로직을 검증하기 위한것이지. 실제 디비를 쿼리하고 그런 테스트는 통합테스트임
그거 의식하고 코드를 짜야 유닛테스트 짤 수 있음 그냥 로직이 db 읽고 쓰는 단순한 정도라 그런걸수도 있는데 단위 테스트를 해야하는 로직이 sql에 들어가있고 이러면 힘들지 - dc App
db 를 repository layer 로 추상화를 해야함 근데 야딩조무사가 말한거처럼 테스트가 가능한가? 라는 질문을 계속 던져야 테스트가 가능한 구조가 나옴 - dc App