테스트 코드 만들어서 테스트 중에 Build 문제를 겪게 되었다.
에러 메시지와 테스트 실패 내용을 종합해 보면,
contextLoads() 테스트 실패 (Spring 컨텍스트 로딩 실패)BeanCreationException 및 PersistenceException 발생 → JPA 엔티티 매니저 생성에 실패
보통 다음 문제 때문일 수 있음:
jakarta.persistence 관련 문제 → Spring Boot 3 이상에서는 jakarta.* 패키지 사용하는데, 의존성 충돌 가능성해결 방법:
application.properties 또는 application-test.properties 에서 DB 연결 정보가 올바른지 확인spring.jpa.hibernate.ddl-auto 옵션 확인 (create-drop 권장)@SpringBootTest 를 제대로 붙였는지 확인UpdatePostInfoTest > 공백_전달시_값_변경_안됨() 테스트 실패AssertionFailedError → 예상 값과 실제 값이 다름updatePostInfo 메서드가 제목과 내용을 공백으로 받았을 때 원래 값이 유지되는지 검사원인 추정:
post.updatePostInfo(" ", " "); 에서 trim() 처리 로직이 없거나, 공백을 빈 문자열로 인식하지 않는 경우updatePostInfo 메서드의 검증 조건 문제 가능성해결 방법:
updatePostInfo 메서드 내부에서 title과 content에 대해 아래와 같이 trim() 후 빈 문자열 체크를 추가해야 함:public void updatePostInfo(String title, String content) {
if (title != null && !title.trim().isEmpty()) {
this.title = title;
}
if (content != null && !content.trim().isEmpty()) {
this.content = content;
}
}
@SpringBootTest 등 컨텍스트 로딩이 필요한 경우 붙였는지 확인여러 점검 사항을 확인했지만 해결하지 못 하고, 추후에 튜터님 방문 후에 인텔리제이 설정에서 Build 설정 변경하여 해결
