2010-05-23 89 views
12

我有一个项目,在200个测试课中有近500个单独的测试。其中的一些测试在完成后不会很好地完成自己的状态,而在Eclipse中这会导致一些测试失败。从命令行通过Ant运行测试套件时,测试全部通过。在Eclipse中的单独JVM中运行每个JUnit测试?

我可以在Eclipse中以某种方式启用'测试隔离'吗?我不介意是否需要更长的时间才能运行。

长期来看,我会清理那些行为不当的测试,但是在短期内我想让测试工作。

回答

3

如果您在Eclipse中使用Ant,则可以将JUnit任务设置为为每个测试分叉一个新的JVM进程,从而提供隔离。

http://ant.apache.org/manual/Tasks/junit.html

+0

它只会为整个测试套件分配一个新的JVM,而不是每个单独的测试。 – 2010-05-23 00:48:06

+0

可能仍然有用。 – 2010-05-23 00:51:22

+2

@Michael - 如果forkmode属性设置为“perTest”,那么应该为每个测试创建一个新的JVM - 这是默认值。 – 2010-05-23 13:59:36

0

我也有类似的需求,并开发了已经公布的Maven中央small maven plugin Jute。它为每个JUnit测试方法启动外部JVM进程。

+0

他想在日食中运行它们。我认为像他一样,他希望在JUnit选项卡中看到单元测试结果。他已经表明他使用Ant而不是Maven - Ant已经让你以他想要的方式运行测试。 – mjaggard 2016-02-01 12:52:11

相关问题