스프링 부트 2.2 부터 JUnit 채택했다고 함. 그래서 2.2 버전 이후부터 사용 가능하다. java 8 버전부터 JUnit 이 사용 가능 하니, 자바 버전을 그 이상으로 맞춰줘야 한다.
Spring Initialize로 생성한 프로젝트에는 build.gradle 에 알아서 들어가 있다.
testImplementation('org.springframework.boot:spring-boot-starter-test') {
exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
}
|어노테이션 Annotation
@Test
테스트를 만드는 어노테이션. 테스트 코드 위에 사용해준다.
@Test
void findMembers() {
//테스트 함수 동작 내용
}
@BeforeEach
각각의 테스트 메소드가 실행되기 전에 호출되어 처리 되는 부분이다.
@BeforeEach
public void beforeEach() {
memoryMemberRepository = new MemoryMemberRepository();
memberService = new MemberService(memoryMemberRepository); // 이렇게 멤버 서비스에서 받는 방식. dependency Injection : DI
}
@AfterEach
각각의 테스트 메소드가 끝나고 나서 실행하는 부분. 보통 테스트 마다 공통된 자원(ex. DB) 을 사용할 때, 이전 테스트로 인한 결과물을 지우기 위해 사용한다.
@AfterEach
public void afterEach() {
memoryMemberRepository.clearStore(); //클리어 스토어 하면 저장소를 지움.
}
@Disabled
특정 메소드가 @Deprecated 되었거나 테스트에 확실히 패스 되는 경우 아닐 때 실행 안되도록 하는 부분.
@BeforeAll, @AfterAll
모든 메소드 실행 전, 끝난 후에 실행되는 단위이다.
Uploaded by Notion2Tistory v1.1.0