jenkins maven build没有运行JUnit测试

时间:2015-12-04 20:55:09

标签: java spring-mvc jenkins maven-2

我有完全相同的代码,只是以两种不同的方式编译。一个是Spring中的maven构建,另一个是Jenkins的maven构建。

Spring构建产生

[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building TestApplication 1.0.0-BUILD-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ Woof ---
[INFO] Deleting TestApplication\target
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ Woof ---
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.5.1:compile (default-compile) @ Woof ---
[WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. build is platform dependent!
[INFO] Compiling 7 source files to TestApplication\target\classes
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ Woof ---
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.5.1:compile (default-compile) @ Woof ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ Woof ---
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 1 resource
[INFO] 
[INFO] --- maven-compiler-plugin:2.5.1:testCompile (default-testCompile) @ Woof ---
[WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. build is platform dependent!
[INFO] Compiling 1 source file to TestApplication\target\test-classes
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ Woof ---
[INFO] Surefire report directory: TestApplication\target\surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running com.woof.bark.TestTest
Tests run: 5, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.667 sec <<< FAILURE!
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------

但Jenkins构建产生

[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building TestApplication 1.0.0-BUILD-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ Woof ---
[INFO] Deleting TestApplication\target
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ Woof ---
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.5.1:compile (default-compile) @ Woof ---
[WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. build is platform dependent!
[INFO] Compiling 7 source files to TestApplication\target\classes
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ Woof ---
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.5.1:compile (default-compile) @ Woof ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ Woof ---
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 1 resource
[INFO] 
[INFO] --- maven-compiler-plugin:2.5.1:testCompile (default-testCompile) @ Woof ---
[WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. build is platform dependent!
[INFO] Compiling 1 source file to TestApplication\target\test-classes
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ Woof ---
[INFO] Surefire report directory: TestApplication\target\surefire-reports
[JENKINS] Recording test results
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
Waiting for Jenkins to finish collecting data
Finished: SUCCESS

如果案例失败,我如何让Jenkins也运行单元测试并停止构建?

添加MAVEN_OPTS -DskipTests = false -Dmaven.test.failure.ignore = false不起作用。

1 个答案:

答案 0 :(得分:1)

原来我在POM.xml中缺少一个插件

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>2.8.1</version>
</plugin>