集成测试maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test

Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test (default-test) on project NewCRUD: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test failed.

原因,通过testng+maven的方式执行集成测试出的错误
集成测试maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test_第1张图片
经过验证呢,发现只要单元测试有一个失败的,就会报这个错误,如果单元测试全部成功,就不报这个错误
集成测试maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test_第2张图片

集成测试maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test_第3张图片
网上搜索有一种解决办法
集成测试maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test_第4张图片
虽然是不报错了,但是,我们要做的是集成测试啊,这不就跳过测试了么,所以这种对我们来说并不可取

那怎么办,切换一下版本试试
集成测试maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test_第5张图片
发现倒是不报错了,可是也没执行单元测试啊,也不可取

那我们来看一下这个报错到底影响了什么指令

集成测试maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test_第6张图片
集成测试maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test_第7张图片
集成测试maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test_第8张图片
package报错
集成测试maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test_第9张图片
verify错误

集成测试maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test_第10张图片
install错误
集成测试maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test_第11张图片
然后尝试了其他的方法,通过-X指令打开maven的debug模式

集成测试maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test_第12张图片
发现在test的生命周期中并没有我们设置的参数,到底为什么,希望有大佬告诉我一下。

但是我们回想一下,单元测试是不是一定要通过,是的,每一个用例错误了,都是不对的,按理来说,单元测试错了,就是不应该让它编译成功的对不对。需要我们返回来继续调试,那么,如果出现了这种问题,影响了打包编译怎么办

在测试类上添加@Igenore并不会管用,至少我是没成功,那我们只能根据报错信息确定是哪个类报的错误,然后将错误的类从testng.xml文件中去掉。

你可能感兴趣的:(单元测试,持续集成,maven,集成测试,apache)