运行 Ant 中的 JUnit 测试:为什么要分叉到单独的 VM 中?
Running JUnit tests in Ant: why fork into separate VM?
我对 Ant 和 JUnit 比较陌生。
通过阅读 Ant 手册并搜索 Google 和 SO,我了解了如何在 运行 Junit 测试时分叉到一个单独的 VM 中,但不是 为什么 这是好事还是坏事。
到目前为止,我找到了这些答案:
- 运行 单独 VM 中的测试将隔离测试并防止每个测试受到 VM 范围系统属性的影响
- 分叉还允许使用
<jvmarg>
[编辑] 将新参数传递给 VM
- 运行 单独的 VM 会降低性能时间
仅此而已吗?
当您 运行 使用分叉 VM 进行单元测试时,您可以向其传递新参数。例如,与编译相比,您可能需要更多的内存用于 运行 测试,您可能希望 运行 将测试放在不同的目录中,或者可能将不同的 java 参数传递给新的虚拟机。如果您查看 junit task 的 Ant 手册,您会发现如果您不处于 fork 模式 .
,许多参数将被忽略
我对 Ant 和 JUnit 比较陌生。
通过阅读 Ant 手册并搜索 Google 和 SO,我了解了如何在 运行 Junit 测试时分叉到一个单独的 VM 中,但不是 为什么 这是好事还是坏事。
到目前为止,我找到了这些答案:
- 运行 单独 VM 中的测试将隔离测试并防止每个测试受到 VM 范围系统属性的影响
- 分叉还允许使用
<jvmarg>
[编辑] 将新参数传递给 VM
- 运行 单独的 VM 会降低性能时间
仅此而已吗?
当您 运行 使用分叉 VM 进行单元测试时,您可以向其传递新参数。例如,与编译相比,您可能需要更多的内存用于 运行 测试,您可能希望 运行 将测试放在不同的目录中,或者可能将不同的 java 参数传递给新的虚拟机。如果您查看 junit task 的 Ant 手册,您会发现如果您不处于 fork 模式 .
,许多参数将被忽略