通常,你会开发一个带有很多失败单元测试的系统。 如果你正在实践测试驱动开发(TDD),你可能会使用测试失败来衡量你离项目完成有多远。 如果你有失败的单元测试,但你仍然希望产生构建输出,你就必须告诉 Maven 让它忽略测试失败。 当Maven 遇到一个测试失败,它默认的行为是停止当前的构建。 如果你希望继续构建项目,即使 Surefire 插件遇到了失败的单元测试,[color=red]你就需要设置 Surefire 的testFailureIgnore 这个配置属性为 true。[/color]
例如. 忽略单元测试失败
<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>
该插件文档 (http://maven.apache.org/plugins/maven-surefire-plugin/testmojo.html) 说明,这个参数声明为一个表达式:
例如. 插件参数表达式
testFailureIgnore Set this to true to ignore a failure during testing. Its use * Type: boolean
* Required: No
* Expression: ${maven.test.failure.ignore}
这个表达式可以从命令行通过 -D 参数设置。
[color=red]$ mvn test -Dmaven.test.failure.ignore=true[/color]
例如. 忽略单元测试失败
<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>
该插件文档 (http://maven.apache.org/plugins/maven-surefire-plugin/testmojo.html) 说明,这个参数声明为一个表达式:
例如. 插件参数表达式
testFailureIgnore Set this to true to ignore a failure during testing. Its use * Type: boolean
* Required: No
* Expression: ${maven.test.failure.ignore}
这个表达式可以从命令行通过 -D 参数设置。
[color=red]$ mvn test -Dmaven.test.failure.ignore=true[/color]