내 스프링 MVC 애플리케이션에 대한 단위 테스트를 작성합니다.스프링 MockMvc에서 빈 응답 헤더 (springSecurityFilterChain 포함)
이 내 mockMvc 초기화 코드 :
@Configuration
public class SpringMockFactory {
@Autowired
private WebApplicationContext wac;
@Autowired
private FilterChainProxy springSecurityFilterChain;
@Bean
@Scope("prototype")
public MockMvc getMockMvc() {
return webAppContextSetup(wac)
.addFilter(springSecurityFilterChain)
.build();
}
}
모든 것이 잘 작동하지만, 내가 추가 할 때 springSecurityFilterChain 응답 헤더는 항상 (이 중요한 원인입니다 I 세트-Cookie 헤더를 확인하려면) 비어 있습니다.
resultActions = mockMvc.perform(post("/api/login")
.contentType(MediaType.APPLICATION_FORM_URLENCODED)
.param("username", "sysadmin")
.param("password", "password")
).andDo(print());
그리고이 andDo의 결과이다 (인쇄()) :
나는 작업을 수행하기 위해이 코드를 사용
MockHttpServletResponse:
Status = 200
Error message = null
Headers = {}
Content type = null
Body = {"status":200}
Forwarded URL = null
Redirected URL = null
Cookies = []
질문입니다 응답 헤더 때 비어있는 이유 mockMvc와 함께 springSecurityFilterChain을 사용 하시겠습니까? 그리고 그것들을 읽는 방법?
동일한 문제가 있습니다 ... 필터의 다른 조합을 테스트하려고했습니다/등. 운이 없다. –
내 대답을 시도 했습니까? –