인프런 커뮤니티 질문&답변
update 쿼리 관련 질문
작성
·
270
0
우선 자바 문외한 인데 강사님 강의 스프링 부트 부터 시작해서 jpa 까지 들으면서 공부하고 있습니다.
좋은 강의로 자바에 입문하게 도와주셔서 감사합니다.
스프링 데이터 JPA : Update 쿼리 메소드 강좌 중의 테스트 코드를
@DataJpaTest 로 하면 insert -> update -> select 쿼리가 실행 되면서 title 이 jpa -> Spring 으로 바뀌는 것이 확인 됩니다.
그런데 @SpringBootTest 로 하면 insert -> select 쿼리만 실행 되고 update 쿼리는 실행 되지 않아 테스트는 실패합니다.
테스트 어노테이션이 바뀌니까 다른 결과가 나오는지 잘 이해가 되지 않습니다.
findAll 이 실행 되기 전에 dirthchecking(?) 을 하면서 데이터를 맞춰주니까 update 쿼리가 실행 되어야 맞는것 같은데요..무슨 차이일까요?
@Test
public void updateTest() throws Exception {
Post post = new Post();
post.setTitle("jpa");
Post newPost = postRepository.save(post);
newPost.setTitle("Spring");
List<Post> posts = postRepository.findAll();
assertThat(posts.size()).isEqualTo(1);
assertThat(posts.get(0).getTitle()).isEqualTo("Spring");
}
답변 1
0





