@Slf4j @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations={"classpath:spring/application-config.xml", "file:src/main/webapp/WEB-INF/mvc-config.xml"}) @WebAppConfiguration public class PrismArticleControllerTest { @Autowired WebApplicationContext wac; MockMvc mockMvc; @Before public void setUp() { mockMvc = MockMvcBuilders.webAppContextSetup(wac).build(); } @Test public void testSetSession() throws Exception { mockMvc.perform( get("path")) .andDo(print()) .andExpect(status().isOk()) .andExpect(view().name("/test/test")) .andExpect(model().attributeExists("attr")); } }
간략하게 위와 같은 테스트 결과는
isOk() 에서 fail 이 나왔다.
200 이아니라 404 가 나옴...
why?
설정 파일에
<mvc:annotation-driven></mvc:annotation-driven>
이게 없었다.
내가 설정한 프로젝트가 아니라
위의 file 로 표시되어있는 설정 파일이 하나 더있었다.
해결하기 위해서는,
<annotation-driven> 이 있는
설정 파일을 추가해주면 된다.
참고) http://stackoverflow.com/questions/19138255/status-expected200-but-was404-in-spring-test
'개발 > 웹' 카테고리의 다른 글
spring mvc mocking 사용시 @modelattributes (0) | 2016.12.02 |
---|---|
mybatis typealiases (0) | 2016.11.29 |
[SPRING-BOOT] controller junit test (0) | 2016.11.29 |
server, jsp, servlet version 확인 (0) | 2016.11.23 |
forward vs redirect (0) | 2016.11.23 |
댓글