当前位置: 首页 > 知识库问答 >
问题:

如何在Spring Boot2.2.0中禁用集成测试中的安全性?

郤浩慨
2023-03-14
@EnableAutoConfiguration(exclude = {SecurityAutoConfiguration.class, SecurityFilterAutoConfiguration.class}) // not working

@EnableAutoConfiguration(exclude = { SecurityAutoConfiguration.class, ManagementSecurityAutoConfiguration.class }) // not working too.

我该怎么做呢?

共有1个答案

东方海
2023-03-14

看来你和我一定是在同一时间用头撞同一件事。

我能够使@autociguremockmvc(Secure=false)完全执行我想要的操作--禁用单元测试的所有安全性。但是,它在我的IDE中立即被标记为deprecated,因为我使用的是Spring Boot2.1.6。我不喜欢使用不推荐使用的东西,所以我试了一遍又一遍地让exclude属性发挥作用,但从来没有。

我几乎要放弃它,并遭受“弃用”警告,因为至少我的单元测试可以使用它。

 类似资料:
  • 我有这样的测试: 在测试中,我禁用了验证/授权 在代码中返回null 还有这个:

  • 我使用spring boot版本“1.3.0.M5”(我也尝试了版本“1.2.5.Release”)。我添加了Spring Security性:

  • 问题内容: 我有一个Java方法,可在Mongo集合的两个字段上创建索引。我应该获取集合的索引信息,然后检查索引的名称和字段是否正确。为此编写集成测试的最干净方法是什么?使用自定义的Hamcrest匹配器查看索引是否在集合中是否有意义? 问题答案: 在春天 使用,您可以获取的列表,代表MongoDB集合的索引。由于这是一个常规列表,因此您可以结合使用和进行断言: 如果您觉得这太难以理解或不方便使用

  • 我有以下实现: 此安全性适用于正常运行的应用程序。但在测试中-失败。我有一个集成测试,如下所示: 运行后,我得到以下错误: null (为了简洁起见,删除了方法体和一些字符串) //编辑附加的丢失类,这些类被注入到:

  • 我试图测试我的Spring MVC控制器,但我不断收到与Thymeleaf模板相关的错误。我真的不想在控制器测试中处理模板错误,因为这不是我真正感兴趣的。当模板不存在时让测试失败是可以的,但现在我收到了与根据错误代码找不到消息相关的错误。 当我运行应用程序时,这个问题不存在。我一直在尝试弄清楚如何设置测试环境来解决这个问题,但在那里我找不到任何有效的方法。现在,我只是真的想让控制器代码正常工作。

  • 我尝试添加自定义过滤器并将其作为bean注入,我还尝试在WebSecurityConfigurerAdapter中禁用cors,我还尝试在configure HttpSecurity方法中添加过滤器。 这些我已经尝试过的一些链接: 1:Spring引导安全性的CORS问题。