为什么Maven警告故障安全forkCount不应该为零?

crcmnpdw  于 2023-08-03  发布在  Maven
关注(0)|答案(1)|浏览(160)

我已经在maven-failsafe-plugin配置中将forkCount设置为零,以便在调试时可以轻松地使用mvnDebug并在测试中设置断点。
这将导致警告:
参数forkCount不应该为0,不fork JVM进行测试会降低测试的准确性,确保>= 1。
为什么会这样?不分叉对精度有什么影响?

wn9m85ua

wn9m85ua1#

从我所读到的内容来看,forkCount=0似乎会保留mvn运行测试的同一个VM。这可能导致mvn过程的问题,并可能导致测试中的潜在不准确。forkCount=1应该启动1个新的VM(不需要mvn)来运行测试。这将使mvn和测试分开。
我经历过的肯定会影响测试准确性的事情是reuseForks属性。如果设置为true,则静态数据或静态类可以保留在分叉VM中,这可能影响未来的测试。测试运行得更快。当reuseForks = false时,分叉的VM被杀死并启动一个新的VM。这可以防止任何静态数据问题或糟糕的测试清理(如果问题是只是糟糕的测试清理/隔离,这不是一个很好的解决方案)。测试运行得更慢,但更准确。
主要来源:https://maven.apache.org/surefire/maven-failsafe-plugin/examples/fork-options-and-parallel-execution.html

相关问题