기본표기 : 실행되는 메서드의 명칭이 출력됨
@MockMvcTest
public class HomeControllerTest {
@Autowired
private MockMvc mockMvc;
@Test
public void home_view() throws Exception{
mockMvc.perform(get("/"))
.andDo(print())
.andExpect(status().isOk())
.andExpect(view().name("index.html"));
}
}
- 보통 위처럼 메서드는 가독성을 위해서 언더스코어 규칙에 따라 주로 작성한다
@DisplayNameGeneration : 언더스코어를 공백으로 치환시켜 출력시켜줌
@MockMvcTest
@DisplayNameGeneration(DisplayNameGenerator.ReplaceUnderscores.class)
public class HomeControllerTest {
@Autowired
private MockMvc mockMvc;
@Test
public void home_view() throws Exception{
mockMvc.perform(get("/"))
.andDo(print())
.andExpect(status().isOk())
.andExpect(view().name("index.html"));
}
}
- 클래스에 해당 어노테이션 사용시 클래스 안에 있는 모든 메서드에 적용되며, 특정 메서드에만 사용시 해당 메서드만 적용된다.
@DisplayName : 한글, 공백, 이모지 등 자유롭게 테스트이름을 각자 표현가능함
@MockMvcTest
public class HomeControllerTest {
@Autowired
private MockMvc mockMvc;
@DisplayName("Get Main View")
@Test
public void home_view() throws Exception{
mockMvc.perform(get("/"))
.andDo(print())
.andExpect(status().isOk())
.andExpect(view().name("index.html"));
}
}
- 가장 활용도가 높으며 쉽고 자유롭게 사용이 가능하여 주로 사용하게되는 어노테이션
# 이 글은 백기선님의 "더 자바, 애플리케이션을 테스트하는 다양한 방법"을 듣고 정리한 내용입니다. #
'Language > Java(TestCode)' 카테고리의 다른 글
[TestCode] @interface 커스텀 태그 (JUnit5) (0) | 2022.08.25 |
---|---|
[TestCode] @Tag 태깅과 필터링 (JUnit5) (0) | 2022.08.24 |
[TestCode] assume 조건에 따라 테스트 실행 (JUnit5) (0) | 2022.08.22 |
[TestCode] assertion 기대값, 참 거짓 확인 (JUnit5) (0) | 2022.08.21 |
[TestCode] Test, Before, After, Disabled (JUnit5) (0) | 2021.12.07 |