【发布时间】:2013-01-30 02:35:47
【问题描述】:
我的问题是某些测试失败了。我认为一个函数破坏了上下文,因此测试失败了。
Spring 是为每个测试或每个测试类加载新的上下文还是为测试运行只加载一次?
【问题讨论】:
我的问题是某些测试失败了。我认为一个函数破坏了上下文,因此测试失败了。
Spring 是为每个测试或每个测试类加载新的上下文还是为测试运行只加载一次?
【问题讨论】:
开箱即用,无需更改配置,Spring 应该只为每个测试套件加载一次上下文。
默认情况下,一旦加载,配置的 ApplicationContext 会被重用 对于每个测试。因此,每次测试仅产生一次设置成本 套件,随后的测试执行速度要快得多。在这种情况下, 术语测试套件意味着所有测试都在同一个 JVM 中运行——例如, 所有测试都从给定项目的 Ant、Maven 或 Gradle 构建中运行 或模块。在不太可能的情况下,测试会破坏应用程序 上下文并需要重新加载——例如,通过修改 bean 应用程序对象的定义或状态——TestContext 框架可以配置重新加载配置并重建 执行下一个测试之前的应用程序上下文。
【讨论】: