【发布时间】:2019-06-06 10:31:31
【问题描述】:
假设您有一个 Spring-Boot 应用程序,并且在此应用程序中还有一堆集成测试,它们使用 @SpringBootTest 注释并使用 SpringRunner 类运行。
它们由maven failsafe plugin 调用,默认情况下不会以任何方式并行化测试。测试都运行良好,没有任何问题。
如果您使用 forkCount 的故障安全功能会发生什么变化 - 您可以期望测试执行开箱即用吗?你需要调整一些代码吗?您需要注意哪些可能不允许这些集成测试通过此插件在分叉的“并行”环境中运行?
据我了解,故障安全插件将创建 forkCount-many JVM,并在每个 JVM 中执行一些集成测试。这听起来好像没什么可做的,你不需要做任何线程安全的东西,你不需要把 Singleton-beans 变成 ThreadScoped bean 或任何东西——因为拥有多个 JVM 的过程应该已经创建了多个这些 bean。
抱歉,如果这个问题看起来很奇怪,我尝试研究这个问题,但找不到答案。
【问题讨论】:
标签: spring spring-boot integration-testing maven-failsafe-plugin