解决mvn clean install遇到testng单元测试失败时打包也失败的问题

解决mvn clean install遇到testng单元测试失败时打包也失败的问题

看这个之前请先看这个
Jenkins执行Testng

比如我现在就有一个单元测试失败的项目

执行mvn clean install的时候就会报错

下面是我现在的pom.xml

但我们不希望这样,怎么办

xml 复制代码
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>3.0.0-M4</version>
                <configuration>
<!--                    这个testFailureIgnore就是就算执行失败也可以正常打包的关键-->
                    <testFailureIgnore>true</testFailureIgnore>
                </configuration>
            </plugin>

新增上面这个配置,即可

再次执行mvn clean install,就算失败了也没问题,照样打包成功

如果要集成jenkins,再加上suiteXmlFiles这个配置

xml 复制代码
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>3.0.0-M4</version>
                <configuration>
<!--                    这个testFailureIgnore就是就算执行失败也可以正常打包的关键-->
                    <testFailureIgnore>true</testFailureIgnore>
                    <argLine>-Dfile.encoding=UTF-8</argLine>
                    <suiteXmlFiles>
                        <!--suppress UnresolvedMavenProperty -->
                        <suiteXmlFile>${xmlFileName}</suiteXmlFile>
                    </suiteXmlFiles>
                </configuration>
            </plugin>

我们接下来大致讲讲这个surefire

maven-surefire-plugin插件默认会自动执行测试源码包(即test目录下)中遵循以下命名规则的java测试类。

*/Test .java

**/*Test.java

**/*TestCase.java

在Maven构建过程中,测试是其生命周期的一部分,每一个构建过程都会执行项目中的测试用例,如果遇到一个测试失败,默认会停止当前的构建。

如果遇到测试失败时,依然希望继续构建项目,那么需要设置surefire插件的testFailureIgnore属性为true。

相关推荐
林间码客1 天前
全栈视角下的 Mock 指南:从后端单元测试到前端 Vue 3 联调
前端·vue.js·单元测试
sun༒2 天前
Logback 日志框架总结:从入门到实战
单元测试·logback
happyness442 天前
如何利用 AI 自动编写单元测试(Unit Test)来捕捉隐藏的边缘情况 Bug?
人工智能·单元测试·bug
木子杳衫2 天前
Java高级进阶 | 单元测试JUnit + 反射机制实战详解
java·junit·单元测试
Dontla3 天前
冒烟测试介绍(Smoke Test、BVT构建验证测试、构建验收测试)与回归测试对比、与单元测试对比、与集成测试对比、Cypress
java·单元测试·集成测试
测试修炼手册8 天前
[测试技术] TestNG 入门与实战:分组、数据驱动与并行执行
junit·单元测试·log4j
川石课堂软件测试9 天前
安全测试|常见SQL注入攻击方式、实例及预防
服务器·数据库·sql·功能测试·测试工具·安全·单元测试
在水一缸9 天前
深入浅出 Catch2:现代 C++ 测试框架的优雅实践
开发语言·c++·单元测试·log4j·测试框架·catch2
花椒技术10 天前
AI Coding 后半程:6 类 QA Skills 如何接住测试与发布?
单元测试·ai编程·测试
疯狂打码的少年10 天前
【软件工程】软件测试阶段:单元测试与集成测试(高频对比考点)
笔记·单元测试·集成测试·软件工程