Test 코드의 중요성
@RunWith(SpringRunner.class)
ApplicationContext를 만들고 관리하는 작업을 @RunWith(SpringRunner.class)에 설정된 class를 이용하겠다라는 의미
@SpringBootTest
스프링 부트 기능으로 테스트를 시작하라는 것을 JUnit에게 알려준다. main()
메서드의 SpringApplication.run()
호출에 부합되는 테스트 클래스를 나타낸다. @SpringBootTest
가 테스트의 스프링 애플리케이션 컨텍스트를 로드하는 작업을 수행하더라고 메서드가 없다면 아무 일도 하지 않는다. 그래서 아래와 같이 contextLoads()
메서드가 정의되어 있는 것처럼 실행 코드는 없더라도 테스트 메서드가 있는 경우에는@SpringBootTest
애노테이션이 작업을 수행하게 되어 스프링 애플리케이션 컨텍스트가 로드 된다.
@SpringBootTest
class StudyApplicationTests {
@Test
void contextLoads() {
}
}