我正面临着JUnit和Ant的一个小问题。我不知道应该如何进行测试。我应该使用forked="yes"
选项为每个测试创建一个新VM,还是应该使用相同的VM?
哪种方式更好,或者我怎么知道何时使用相同的JVM?
由于
答案 0 :(得分:2)
要在Ant中运行JUnit测试,请使用junit
任务。可以选择在单独的JVM(fork
属性)中运行测试。
通常,最好在单独的VM中运行测试,以将它们与Ant JVM及其类路径隔离开来。这也允许为测试配置JVM的属性,例如最大内存量(只有在启用fork
时才应用任务的许多属性)。
但是,由于创建新JVM的开销,这使得测试需要更长的时间。这还取决于forkmode
属性。如果设置为perTest
,则每个测试都将在其自己的VM中运行。
<强> forkmode
强>
如果要分叉某些测试,请控制创建的Java虚拟机数量。可能的值是“perTest”(默认值),“perBatch”和“once”。 “once”只为所有测试创建一个Java VM,而“perTest”为每个TestCase类创建一个新VM。 “perBatch”为每个嵌套创建一个VM,并为所有嵌套s创建一个VM。