先列出模板内容:

<!DOCTYPE html>
<html>

<head>
<meta charset="UTF-8">
<title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title>
</head>

<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4" offset="0">
<div width="95%" cellpadding="0" cellspacing="0" style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
<div>本邮件由系统自动发出,无需回复!
<br>
<br>各位同事,大家好,以下为${PROJECT_NAME }自动化测试项目构建信息
<br>
<div><font color="#CC0000">构建结果 - ${BUILD_STATUS}</font></div>
</div>
<div>
<h4><font color="#0B610B">构建信息</font></h4>
<hr size="2" width="100%" />
<ul>
<li>项目名称 : 海带pre自动化接口测试报告</li>
<li>构建编号 : 第${BUILD_NUMBER}次构建</li>
<li>触发原因: ${CAUSE}</li>
<li>构建状态: ${BUILD_STATUS}</li>
<li>构建 Url : <a href="${BUILD_URL}">${BUILD_URL}</a>
</li>
<li>项目 Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a>
</li>
</ul>
</div>
<div>
<h4><font color="#0B610B">测试结果</font></h4>
<hr size="2" width="100%" />
<div>
本次测试共执行<b>${TEST_COUNTS}</b>个用例,成功<b style="color: green">${TEST_COUNTS,var="pass"}</b>个,失败<b style="color: red">${TEST_COUNTS,var="fail"}</b>个,跳过<b style="color: #FFEB3B">${TEST_COUNTS,var="skip"}</b>个。
</div>
</div>
<div>
<h4><font color="#0B610B">测试报告</font></h4>
<hr size="2" width="100%" />
<b>点击查看测试报告: <a href="${PROJECT_URL}ws/test-output/index.html">${PROJECT_URL}ws/test-output/index.html</a></b>
</div>
<div>
<h4><font color="#0B610B">失败用例</font></h4>
<hr size="2" width="100%" />
<pre style="font-weight: normal">${FAILED_TESTS,showMessage="false",showStack="false"}
</pre>
</div>
</div>
</body>
</html>

下面是效果图:

TEST_COUNTS 说明
TEST_COUNTS 表示测试时用例数量,使用$TEST_COUNTS 获取,也可以使用带参数的形式获取不同类型用例的数量,如:

用例总数:${TEST_COUNTS,var="total"}

成功用例数:${TEST_COUNTS,var="pass"}

失败用例数:${TEST_COUNTS,var="fail"}

跳过用例数:${TEST_COUNTS,var="skip"}

FAILED_TESTS说明
FAILED_TESTS 是失败用例的详细信息,可直接使用 $FAILED_TESTS 获取,它也拥有一些参数,如:

showStack:是否输出用例失败的代码跟踪信息。默认为 true;    如果要关闭,demo:${FAILED_TESTS,showStack="false"}

showMessage:是否输出用例失败的描述信息,默认为 true;

maxTests:输出失败用例数的最大数量,默认为 Integer.MAX_VALUE;

onlyRegressions:是否只输出回归的测试用例(即最后一次运行的用例),默认为 false;

maxLength:输出内容最大长度,若内容超出此数值则截断以“...”表示。默认Integer.MAX_VALUE;

报告模板里使用FAILED_TESTS时,一定要使用 pre 标签,否则会所有内容都显示在一行。

顺带吐槽一下百度,统计用例个数的时候,百度若干次都没找到正确答案,然后换到谷歌一下就出来结果。

参考:https://stackoverflow.com/questions/16692159/email-ext-jenkins-how-to-send-email-with-tests-statistics-like-run-10-failed

插件源码地址:https://github.com/jenkinsci/email-ext-plugin/tree/master/src/main/java/hudson/plugins/emailext/plugins/content
————————————————
版权声明:本文为CSDN博主「廖剑秋」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/liaojianqiu0115/article/details/89466295

jenkins自动化测试Email Extension邮件模板 及可用参数TEST_COUNTS ,FAILED_TESTS详细说明的更多相关文章

  1. Jenkins Email Extension插件模板

    Jenkins Email Extension插件模板 <!DOCTYPE html> <html> <head> <meta charset="U ...

  2. 用email实现邮件模板

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. Jenkins系列之四——设置邮件通知

    Jenkins持续集成,当我们自动打包部署完,我们可以发送一封邮件给相关的负责人.现介绍一下如何在Jenkins中配置实现邮件通知. 在Jenkins中配置实现邮件通知,Jenkins提供了两种方式的 ...

  4. Jenkins邮件扩展(Email Extension插件 Windows环境)

    1.Jenkins ver. 2.107.3版本自带Email Extension插件启动后即可看到系统设置里的 Extended E-mail Notification ,如果没有请安装 2.安装过 ...

  5. jenkins学习9-测试报告发邮件(Email Extension Plugin)

    前言 前面已经实现在jenkins上展示html的测试报告,接下来只差最后一步,把报告发给你的领导,展示你的劳动成果了. 安装 Email Extension Plugin 插件 jenkins首页- ...

  6. Jenkins Email Extension Plugin 邮件插件

    1:系统管理-管理插件-可选插件  搜索Email 可列出Email Extension Plugin插件 2:选择相应的插件点  下载并安装之后重启,等待 3:安装完后,自己去重启tomcat,先s ...

  7. Jenkins邮件扩展插件Email Extension Plugin配置使用

    1.在管理插件中搜索并安装邮件扩展插件Email Extension Plugin: 2.在任务中增加构建后操作步骤,选择Editable Email Notification; 3.在高级中Add ...

  8. Jenkins系列之-—02 email-ext 邮件模板

    邮件通知配置 系统管理 → 系统设置 → 邮件通知 SMTP 服务器:配置 SMTP 服务器.(不填默认本地运行服务器) 用户默认邮件后缀:注册用户邮件只需填写用户名即可,后缀会加该后缀,如果填写,则 ...

  9. jenkins邮件模板

    步骤 1.在jenkins主目录中新建一个模板文件夹 命名为:email-templates 3.把模板代码放入到模板文件夹  with_results.groovy 4.设置邮件发送模板配置 5.配 ...

随机推荐

  1. 曝郭盛华公司30万美元收购Acn.ai域名,揭秘人工智能布局下的巨头们

    据域名投资人曝料,郭盛华公司已经提前拿下.ai短域名 Acn.ai,目前域名已经设置跳转到东联科技的官网.都说域名越短越值钱,而且搜索引擎都喜欢更短的域名,例如京东更换的域名“jd.com”交易价格约 ...

  2. Python代码2转3、3转2的方法

    众所周知,Python2和Python3不兼容. 那么,假如遇到了超大的工作量,我们是不是需要一行一行地手动去改呢? 当然不是. (一)2转3 Python3.7(顺便提一句,现在装3.7发现好像安装 ...

  3. 浅谈Java回收对象的标记和对象的二次标记过程_java - JAVA

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 一.对象的标记 1.什么是标记?怎么标记? 第一个问题相信大家都知道,标记就是对一些已死的对象打上记号,方便垃圾收集器的 ...

  4. Fortran代码生成so库

    例: ifort -c -fpic test.f90ifort -shared -o test.so test.o

  5. ForkJoinPool及并行流解析

    parallelStream原理. parallelStream是并行流,依赖jdk1.7出现的Fork/Join框架. Fork/Join框架的核心是工作窃取(work-stealing)算法.那么 ...

  6. JAVA支持HTTP断点续传

    第一点:Java代码实现文件上传 FormFile file = manform.getFile(); String newfileName = null; String newpathname =  ...

  7. C++ 值传递、指针传递、引用传递

    1.值传递 (1)形参是实参的拷贝(这句话说明形参和实参是两个实体),改变形参的值并不会影响外部实参的值. (2)从被调用函数的角度来说,值传递是单向的(实参->形参),参数的值只能传入,不能传 ...

  8. Debian Buster升级后找不到声卡

    昨天将Debian从Stretch升级到了新版巴斯光年(Buster).仍旧是先将source.list中的stretch替换为buster,再执行apt-get的update.upgrade.dis ...

  9. QGIS源码解析和二次开发

    使用Python 开发一个交通系统? 不如基于GeoServer来开发更能产生效益 QGIS3d:https://blog.csdn.net/shi_weihappy/article/details/ ...

  10. Vue项目开发,nprogress进度条加载之超详细讲解及实战案例

    Nprogress的默认进度条很细,它的设计灵感主要来源于 谷歌,YouTube 他的安装方式也很简单,你可以有两种使用方式: 直接引入js和css文件 使用npm安装的的方式 直接引入: Npm安装 ...