2

forkMode在 Ant 和 Maven 中有对 的支持,有时我们将它与 value 一起使用perTest。但是,当我们在类或项目上运行测试时(运行方式 -> JUnit 测试),Eclipse 中的 JUnit 测试仍然失败。显然,JUnit 使用默认设置或行为并并行执行测试,导致 JUnit 视图中出现一些红叉。

  1. 有没有办法将一些东西编码到测试类中,让 JUnit 表现得像forkMode设置?我们不介意是否有一个仅限 Eclipse 的解决方案。
  2. 或者这可以通过 Eclipse 中的运行配置来完成吗?

编辑:
我知道问题是基于测试后剩余的数据,因此进一步的测试将失败。虽然这是有道理的,但请理解这并不能回答我的问题。把我的情况想象成某种老虎队的一部分。我们有很多问题,修复现有测试的那部分只是其中之一。相信我,我们会尽力涵盖所有内容......(我有一段时间没听说过

4

1 回答 1

1

Eclipse 在同一个 JVM 中的单个线程中串行运行 JUnit 测试。如果您有通常并行运行的测试,这不应影响测试行为。但是,如果您假设您可以更改 VM 中的设置,例如系统属性或类静态变量,并且下一个测试不会有这些更改,那将破坏您的测试。

经验法则是,每个测试都应该让系统(虚拟机、数据库、文件系统)完全保持原样,这样每个测试都可以在任何时间以任何顺序运行。

于 2012-10-17T14:12:14.840 回答