我在 Jenkins 上使用 Email-ext 插件,以及默认的 Jelly 脚本 ${JELLY_SCRIPT,template="html"}。
该模板显然会在电子邮件中输出所有单元测试,而不仅仅是那些失败并使构建不稳定的单元测试。这本身就是一个奇怪的设计决定,因为重要的内容会丢失,但是有没有一种简单的方法可以在电子邮件中输出失败的测试?我想我需要在某处编辑默认的 Jelly 脚本模板?谢谢!
我在 Jenkins 上使用 Email-ext 插件,以及默认的 Jelly 脚本 ${JELLY_SCRIPT,template="html"}。
该模板显然会在电子邮件中输出所有单元测试,而不仅仅是那些失败并使构建不稳定的单元测试。这本身就是一个奇怪的设计决定,因为重要的内容会丢失,但是有没有一种简单的方法可以在电子邮件中输出失败的测试?我想我需要在某处编辑默认的 Jelly 脚本模板?谢谢!
${JELLY_SCRIPT,template="html"}
在这个脚本html
中指的是文件html.jelly
. 在 Hudson 中,此文件位于路径HUDSON_HOME/plugins/email-ext/WEB-INF/classes/hudson/plugins/emailext/templates
. 您可以创建自己的果冻文件,例如 abc.jelly 并将脚本用作${JELLY_SCRIPT,template="abc"}
但是,在 Jenkins 中,此果冻模板已捆绑到位于 .jar 中的 jaremail-ext.jar
中Jenkin_Home/plugins/email-ext/WEB-INF/lib
。/plugins/emailext/templates/
根据您的要求打开此 Jar 并在该位置更新/创建模板。
有一个很好的例子来说明它是如何使用 Jelly 脚本完成的: https ://github.com/jenkinsci/email-ext-plugin/blob/master/src/main/resources/hudson/plugins/emailext/templates/html -with-health-and-console.jelly -> 搜索“JUnit 模板”。
但更具体地说,它是使用
packageResult.getFailedTests()