maven - 在 Jenkins Maven 作业中显示自定义测试结果

标签 maven jenkins continuous-integration

我只是在现有的 Maven POM 中添加了一些 Python 单元测试,但我似乎无法让 Jenkins 在运行构建时报告测试结果。

我在运行 nose来自 Maven 的测试 exec-maven-plugin在“测试”阶段。测试从 Jenkins 作业成功运行并生成 xUnit 兼容的测试报告到 target/surefire-reports/TEST-nosetests.xml,但 Jenkins 不接受结果。

有趣的是,Maven 还报告在执行测试套件之前没有运行测试:

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
There are no tests to run.

Results :

Tests run: 0, Failures: 0, Errors: 0, Skipped: 0

[INFO] 
[INFO] --- exec-maven-plugin:1.1.1:exec (nosetests) @ server ---
[INFO] ................
[INFO] ----------------------------------------------------------------------
[INFO] Ran 16 tests in 194.799s
[INFO] 
[INFO] OK
[INFO] Registering compile source root /Volumes/Data/workspace/myProject/target
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------

那么这是 Jenkins 看不到结果的问题,还是 Maven 没有将我的测试套件视为实际测试的问题?

最佳答案

我通过在 Jenkins 中使用“自由式软件项目”而不是“maven2/3”项目解决了这个问题。

New Project

构建 ,选择 添加构建步骤 并将项目配置为 调用顶级 Maven 目标 .我正在使用测试目标。

Invoke top-level Maven targets

最后,在下构建后操作 选择 添加构建后操作 发布 JUnit 测试结果报告 并将其指向测试的 xUnit 输出。由于某种原因,此选项不适用于 Maven 2/3 作业。

Publish JUnit test result report

关于maven - 在 Jenkins Maven 作业中显示自定义测试结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13459541/

相关文章:

java - 从 Maven/WebJars 加载了不正确的 JavaScript 库版本

java - ant 到 maven 迁移 maven - jar 构建

jenkins - 在 Jenkinsfile 中创建时间戳

jenkins 多分支 jenkinsfile SVN 结帐

jenkins - 如果下游作业失败,如何向上游提交者发送电子邮件?

ios - 与 iOS 7.1 的持续集成 - 无法安装服务器上链接的产品

erlang - Erlang 代码的持续集成服务器

java - 为什么 maven-assembly-plugin 描述符说 <!-- TODO : a jarjar format would be better --> in its example site?

python - 使用多个 Python 版本运行 Jenkinsfile

java - intellij 找不到来自第三方存储库的 Maven 导入