【发布时间】:2012-01-05 11:36:18
【问题描述】:
是否可以选择跳过出现编译错误的测试?只是忽略它们或将它们视为失败?
【问题讨论】:
标签: java unit-testing maven
是否可以选择跳过出现编译错误的测试?只是忽略它们或将它们视为失败?
【问题讨论】:
标签: java unit-testing maven
-DskipTests 通常有效。例如,mvn install -DskipTests。
如果你需要告诉 maven 严格忽略 - 使用-Dmaven.test.skip=true。这将强制所有插件和编译器忽略测试
已编辑:看起来 -DskipTests=true 也有效!
【讨论】:
不推荐...
mvn -DskipTests=true clean compile
记住,权力越大,责任越大。
【讨论】:
maven-compiler-plugin 负责在test-compile 阶段编译您的测试。如果任何测试类无法编译,则此插件配置为使构建失败。您可以尝试使用 failOnError 配置。但我怀疑你会得到你期望的结果。编译过程在遇到编译错误时立即停止。所以可能没有问题的免费类可能没有被重新编译。因此,无法保证您在test 阶段执行的.class 文件将与相应的.java 源文件保持“最新”。
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<execution>
<id>default-testCompile</id>
<phase>test-compile</phase>
<goals>
<goal>testCompile</goal>
</goals>
<configuration>
<failOnError>false</failOnError>
</configuration>
</execution>
</executions>
</plugin>
【讨论】:
使用以下命令跳过整个测试源文件夹。由于测试类中存在编译错误,如果您使用以下命令,maven 不会考虑这些错误。
mvn clean install -Dmaven.test.skip=true
【讨论】: