如何在 Jenkins 中发布 Jest 测试结果?

avi*_*ivh 2 node.js jestjs

我有 Jest 的测试报告。我想在 Jenkins 中显示结果。

我尝试使用 jest-junit 但我未能在 Jenkins 中发布 junit xml

Gra*_*ier 5

根据评论,我实施的解决方案是:

添加jest-junit到您的 package.json:

yarn add --dev jest-junit
Run Code Online (Sandbox Code Playgroud)

并在您的 jest 配置中,添加以下条目:

yarn add --dev jest-junit
Run Code Online (Sandbox Code Playgroud)

对我来说,junit.xml在运行测试时会生成一个文件。然后为了让 Jenkins 收集它们,您可以junit在后期阶段使用插件:

junit checksName: 'Jest Tests', testResults: 'junit.xml'
Run Code Online (Sandbox Code Playgroud)

或者,如果您使用的是“脚本化”而不是“声明性”语法,则可以使用 try/finally:

try {
    sh "jest --ci"
} finally {
    junit checksName: 'Jest Tests', testResults: 'junit.xml'
}
Run Code Online (Sandbox Code Playgroud)