【发布时间】:2017-07-11 17:55:42
【问题描述】:
我有一个 Junit 测试用例,我在其中使用
对应用程序进行身份验证 public static MockHttpServletRequestBuilder prepare(
final MockHttpServletRequestBuilder request,
final Participant user)
{
return request.contentType(MediaType.APPLICATION_JSON)
.with(user(user.getAccount().getUsername())
.authorities(user.getAccount().getRole().getAuthorities()));
}
事情是根据提供的文档 https://spring.io/blog/2014/05/23/preview-spring-security-test-web-security ,它实际上并没有使用用户名和密码进行身份验证,它只是根据我们传递的权限配置 SecurityContext 。
就我而言,每当用户登录应用程序时,我都会记录一个事件。我想编写一个测试用例来检查用户登录应用程序时是否存储了事件。但是由于 spring security 甚至没有对用户进行身份验证,它实际上并没有调用
onSuccessfulAuthentication(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response, final Authentication authResult)
BasicAuthenticationFilter 我正在记录该事件。
有什么方法可以根据我的要求模拟测试用例吗?
【问题讨论】:
标签: junit spring-security