Jenkins:None 的测试报告包含任何结果

Jenkins: None of the test reports contained any result

我正在尝试向 Jenkins 注册 JUnit 测试结果。这不是我第一次这样做了,我有一个为 Matlab 制作的手工测试框架,它会生成一份手工制作的 Junit 测试报告,并将其提供给 Jenkins,它可以完美运行。

在这种情况下,它要简单得多,我使用 Junit5 对 Java 代码进行单元测试。它是用 gradle 构建的。测试报告已正确生成,我将它们存档到 Jenkins 中并且它们存在。但我仍然收到以下消息:

[管道] junit 记录测试结果 None 的测试报告包含任何结果

我不明白,测试报告有什么问题吗?我附上了其中一个,也许有人可以帮我解决这个错误:

非常感谢,因为我对此有点迷茫

事实证明这是一个误导性消息,如果您允许空存档不会使构建失败(这里就是这种情况,某些 java 插件会生成测试,如果未找到测试报告,则会发生这种情况,其他一些则没有)。

在这种情况下,这是路径中的拼写错误。出于某种原因,文件已正确存档,即使有拼写错误 (?!)。

我在这里 post 给出了答案,只是删除了 link,以防有人 运行 进入同样的误导性错误消息。

我也遇到了类似的问题。 我得到的解决方案是将 xmlVersion 添加为 null。这是对我有用的代码:

junitReporter: {
outputDir: 'test-reports',
outputFile: 'unit-test-report.xml',
useBrowserName: false,
xmlVersion: null
}

您也可以在配置工作区时只检查此项,如果您不关心空结果,它将消除错误。