Contents
Repository 테스트 예시Repository 테스트 예시
@Import(BoardRepository.class)
@DataJpaTest
public class BoardRepositoryTest {
@Autowired
private BoardRepository boardRepository;
@Test
public void findById_test() {
// given
Integer id = 1;
// when
Optional<Board> boardOP = boardRepository.findById(id);
Board board = boardOP.get();
// eye
System.out.println(board.getTitle());
System.out.println(board.getContent());
}
}
- @Import(BoardRepository.class)
- BoardRepository 클래스를 사용할 수 있습니다.
- @DataJpaTest
- JPA 관련 컴포넌트만 초기화합니다.
- Entity, EntityManager, Repository 등이 있습니다.
- 테스트가 끝난 후 데이터베이스 상태를 원래대로 되돌리기 위해 자동으로 트랜잭션을 롤백합니다
- @Autowired
- 의존성 주입
- @Test
- JUnit에서 테스트 메서드를 표시하는데 사용됩니다.
- 해당 어노테이션이 붙은 메서드는 테스트 프레임워크에 의해 자동으로 실행됩니다.
- 테스트에서도 Lombok을 사용하려면 build.gradle의 dependencies 수정이 필요합니다.
- testCompileOnly 'org.projectlombok:lombok'
- testAnnotationProcessor 'org.projectlombok:lombok'
- 2가지를 추가해야 합니다.
dependencies {
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
testCompileOnly 'org.projectlombok:lombok'
testAnnotationProcessor 'org.projectlombok:lombok'
}
Share article