java.lang.AssertionError:期望的状态:< 200>但是:< 302> itShouldAllowAccessToSecuredPageForPermittedUser

时间:2016-07-20 16:18:05

标签: java spring-mvc spring-security

当我尝试在tomcat上启动以下错误时,我的tomcat应用程序拒绝构建

Tests run: 3, Failures: 3, Errors: 0, Skipped: 0, Time elapsed: 13.603 sec <<< FAILURE!
itShouldAllowAccessToSecuredPageForPermittedUser(ie.claddino.chat.LoginTestCase)  Time elapsed: 12.791 sec  <<< FAILURE!
java.lang.AssertionError: Status expected:<200> but was:<302>

这是从控制器类

失败的方法
@Test
    public void itShouldAllowAccessToSecuredPageForPermittedUser() throws Exception {
        SecurityContext securityContext = userAuthentication();
        MockHttpSession session = new MockHttpSession();
        session.setAttribute(HttpSessionSecurityContextRepository.SPRING_SECURITY_CONTEXT_KEY, securityContext);
        mockMvc.perform(get(SECURED_URI).session(session))
                .andExpect(status().isOk()).andExpect(redirectedUrl(LOGIN_PAGE_URL));
    }*

请问我的申请有什么问题?请问有谁知道302的含义。

1 个答案:

答案 0 :(得分:0)

302表示临时重定向请求。当url重定向完成时,我们可以使用302状态代码并将url作为标题中的参数来执行此操作。

由于您正在进行重定向,我认为您应该期待302响应。 status().isOk()表示200状态代码。检查有没有临时重定向的方法或只是把302放在那里。因此它可以检查302代码而不是200代。