在最新的Spring安全测试中缺少依赖项

时间:2017-04-17 23:36:37

标签: spring spring-security spring-security-test

我需要解决下面显示的代码中提到的某些方法(status,jsonPath,content) -

mockMvc.perform(MockMvcRequestBuilders.get("/api/token")
            .with(getAuthentication(getOauthTestAuthentication()))
            .sessionAttr("scopedTarget.oauth2ClientContext", getOauth2ClientContext()))
            .andExpect(status().isOk())
            .andExpect(content().contentType(MediaType.APPLICATION_JSON_UTF8))
            .andExpect(jsonPath("$.username").value("cominventor"))
            .andExpect(jsonPath("$.token").value("my-fun-token"));

当我搜索包含这些方法的相关项目时,其中许多正在导入以下内容

import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;

问题是我无法在版本4.2.2.RELEASE

的包spring-security-test中找到对应物。

最接近但可能有效的选项

import static org.springframework.test.web.servlet.ResultMatcher.*;
import static org.springframework.security.test.web.servlet.response.SecurityMockMvcResultMatchers.*;

以上不包含我要找的方法。任何想法我应该在哪里寻找这些方法或他们的新同行。

2 个答案:

答案 0 :(得分:1)

一旦我将spring-security-test版本设置为4.0.2.RELEASE

,一切都会成功

答案 1 :(得分:1)

我有同样的问题,我解决了它导入工件

org.springframework.security:spring-security-test:4.2.3.RELEASE

我正在使用spring-boot-starter-test:1.5.3,由于某种原因,Spring的人决定不在其POM中包含spring-security-test