一、定时构建

1、构建触发器

  

构建触发器可以根据自己的需求选择,由图看到有四种类型:

(1)可使用脚本触发远程构建;

(2)其他job构建完成后触发当前job执行构建;

(3)定时周期性构建;

(4)hookplugin检测到源码的push操作就触发构建;

(5)定时检查代码分支是否有变化,如果有变化则执行一次构建。

我的目的是做接口测试自动化,每天定时跑任务并监控API功能是否正常,所以选择Build periodically(定期构建)。日程表一共五个参数:

从左到右分别代表:分 时 天 月 星期

第一个参数代表的是分钟minute,取值0~59;

第二个参数代表的是小时hour,取值0~23;

第三个参数代表的是天day,取值1~31;

第四个参数代表的是月month,取值1~12;

第五个参数代表的是星期week,取值0~7,0和7都代表星期天。

0 7 * * 1,3,5 表示每周一、周三、周五的7点00分执行一次,*代表所有。

二、邮件通知 

jmeter构建后,自送发送邮件到指定的邮箱,配置如下

1)Jenkins Location配置

jenkins首页->系统管理->系统配置页面

其中Jenkins URL有默认值,最好修改,因为默认地址不安全。

系统管理员邮件地址一定要写,因为这个地址是邮件通知的发信人邮箱,填写方式有两种:

a)直接填写邮箱地址

b)可以加前缀来标识该邮件基本信息,例如:自动化测试邮件<邮箱地址>

2)Extended E-mail Notification配置

jenkins首页->系统管理->系统配置页面

  按照自己实际使用的邮箱进行配置,设置时,点击“高级”展开,使用SMTP认证(Use SMTP Authentication):

  根据邮箱服务提供商确定SMTP服务器,如:126的SMTP是smtp.126.com、163的SMTP是smtp.163.com,腾讯企业邮箱是smtp.exmail.qq.com

  根据邮箱服务提供商确定是否使用SMTP认证、是否使用SSL协议以及SMTP端口

  根据邮箱服务提供商确定“Password”是邮箱的登录密码还是专用于第三方工具发邮件的验证码,如:QQ和163为验证码,126为登录密码

  注:password是对应邮箱的秘钥

  

OK,邮箱服务的基本配置已经完成。

接下来的配置相当于是邮件通知的全局配置,对具体job来说,还会进行具体的配置,如果在job中重新配置了这里相同的项目,就会覆盖这里的全局配置。

1)Default Content Type:“text/plain”指邮件正文为纯文本格式,“text/html”指邮件内容可以包含html标签且能被邮箱客户端正确解析、显示。我这里选择“text/html”。

2)Default Subject:邮件标题,可以使用系统中的全局邮件变量来设置。我这里设置的标题格式为:项目名称-BUILD#构建次数-构建状态。

3)勾选“Enable Debug Mode”,以开启Extended E-mail Notification的调试功能,这样可以在构建日志中增加更多与Extended E-mail Notification相关的日志。

配置完以上,可以点击“通过发送测试邮件测试配置”来查看邮箱的配置是否成功

 

(3)Job中的邮件配置

jenkins首页->job"test_token”->配置->构建后操作

在job中配置页面,选择增加构建后操作,选中Editable Email Notification即可。

需要填写的各配置项参数说明:

  1)Project Recipient List:这是一个以逗号(或者空格)分隔的收件人邮件的邮箱地址列表。

  2)Default Content:邮件内容,可以使用构建中的环境变量,使得邮件中展示你想要的信息。

完整内容如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title>
</head> <body leftmargin="" marginwidth="" topmargin="" marginheight=""
offset="">
<table width="95%" cellpadding="" cellspacing=""
style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
<tr>
<td>(本邮件是程序自动下发的,请勿回复!)</td>
</tr>
<tr>
<td><h2>
<font color="#0000FF">构建结果 - ${BUILD_STATUS}</font>
</h2></td>
</tr>
<tr>
<td><br />
<b><font color="#0B610B">构建信息</font></b>
<hr size="" width="100%" align="center" /></td>
</tr>
<tr>
<td>
<ul>
<li>项目名称 : ${PROJECT_NAME}</li>
<li>构建编号 : 第${BUILD_NUMBER}次构建</li>
<li>触发原因 : ${CAUSE}</li>
<li>构建日志 : 请查看附件</li>
<li>测试报告 : 请查看附件</li>
<li>项目 Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a></li>
</ul>
</td>
</tr>
<tr>
<td><b><font color="#0B610B">Changes Since Last
Successful Build:</font></b>
<hr size="" width="100%" align="center" /></td>
</tr>
<tr>
<td>
<ul>
<li>历史变更记录 : <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a></li>
</ul> ${CHANGES_SINCE_LAST_SUCCESS,reverse=true, format="Changes for Build #%n:<br />%c<br />",showPaths=true,changesFormat="<pre>[%a]<br />%m</pre>",pathFormat=" %p"}
</td>
</tr> </table>
</body>
</html>

3)Attachments:邮件的附件,我把执行测试脚本生成的html测试报告文件,作为附件随邮件发出去。

注意:这里的写法可以使用通配符来确定文件的路径名称等,但是文件一定要位于workspace目录里面。

由于我之前的job把测试报告放置在/usr/jmeter/apache-jmeter-3.3/TestReport/testToken/html路径下,所以现在要修改一下测试报告输出的路径:

  首先确认workspace目录的路径:/var/lib/jenkins/workspace;

  接着在workspace目录下创建存放测试报告的新文件夹:

    /var/lib/jenkins/workspace/test_token/html

    /var/lib/jenkins/workspace/test_token/jtl

  最后修改/usr/jmeter/apache-jmeter-3.3/TestScrip目录中的test_token_build.xml文件,把其中测试报告的输出路径修改为新的路径即可。

该参数文本框填写内容为html/*.html,意为在该job的workspace路径下搜索html文件夹中所有以.html为后缀的文件,并把这些文件添加到邮件附件中。

(4)触发器配置

决定什么情况下发送邮件。我配置为Always总是触发,接着send to选择RecipientList,意思是每次构建无论成功与否都发送邮件到上面指定的收件人列表邮箱

3、测试配置是否成功

构建触发器的日程表填一个马上临近的时间,等待任务自动执行并发送邮件。

邮件结果为:

博客原地址:http://www.cnblogs.com/LiangHu/p/8259476.html

下一篇文章:https://www.cnblogs.com/syw20170419/p/10732167.html

jmeter+Jenkins持续集成(邮件通知)的更多相关文章

  1. Jenkins持续集成邮件发送

    jenkins下载:https://jenkins.io/downloadgeneric java package(war) 1.tomcat部署: 0.jdk环境 1.修改conf目录下的serve ...

  2. Jmeter+Jenkins持续集成(三、集成到Jenkins)

    1.Jenkins全局工具配置 登录jenkins->系统管理->Global Tool Configuration (1)JDK配置 (2)Ant配置 配置信息按照机器上实际安装的来填写 ...

  3. Jmeter+Jenkins持续集成(一、环境准备)

    1.安装JDK (1)下载JDK,jdk8u181-x64.dmg 并进行安装 (2)配置环境变量.打开配置文件 open -e .bash_profile.按照自己的安装路径进行配置. JAVA_H ...

  4. jmeter+Jenkins 持续集成中发送邮件报错:MessagingException message: Exception reading response

    已经配置好了发送邮件的相关信息,但是执行完脚本出现报错:MessagingException message: Exception reading response 1.查看Jenkins本次构建的控 ...

  5. Jmeter+Jenkins持续集成(Ant运行脚本)

    Jmeter接口测试脚本运行后生成的是jtl(xml)格式的文件,这些文件不具备可读性,所以我们要把他转化为可以阅读的html格式报告. Ant是一个功能强大的打包编译工具.我们使用他的目的是将xml ...

  6. Jenkins+Ant+SVN+Jmeter实现持续集成

     一.什么是持续集成? 待补充 二.说明: 本次框架介绍中不涉及到介绍框架的构建过程,介绍如何构建环境详细的构建见前篇文章: jmeter+Jenkins持续集成(邮件通知) Jmeter+Jenki ...

  7. Jenkins持续集成企业实战系列之Jenkins插件下载及邮件配置-----05

    注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.    最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...

  8. jenkins持续集成(三): jenkins配置邮件通知

    完成基于jenkins的持续集成部署后,任务构建执行完成,测试结果需要通知到相关人员.这篇博客,介绍如何在jenkins中配置邮件通知的方法... 一.安装邮件插件 由于Jenkins自带的邮件功能比 ...

  9. jmeter --- 搭建持续集成接口测试平台(Jenkins+Ant+Jmeter)

    jmeter --- 搭建持续集成接口测试平台(Jenkins+Ant+Jmeter) 一.环境准备: 1.JDK:http://www.oracle.com/technetwork/java/jav ...

随机推荐

  1. 团队第二次 # scrum meeting

    github 本此会议项目由PM召开,召开时间为4-3日晚上9点 召开时长15分钟 任务表格 袁勤 学习SpringBoot https://github.com/buaa-2016/phyweb/i ...

  2. linux如何复制文件夹和移动文件夹

    linux下文件的复制.移动与删除命令为:cp,mv,rm一.文件复制命令cp 命令格式:cp [-adfilprsu] 源文件(source) 目标文件(destination)cp [option ...

  3. 【JVM底层策略 一】GC roots如何判断对象不可达

    查找内存中不再使用的对象 引用计数法 引用计数法就是如果一个对象没有被任何引用指向,则可视之为垃圾.这种方法的缺点就是不能检测到环的存在. 2.根搜索算法 根搜索算法的基本思路就是通过一系列名为”GC ...

  4. android toolbar效果3

    Title居中,只有一个右边按钮 activity_main.xml: <?xml version="1.0" encoding="utf-8"?> ...

  5. Python第1天

    今天主要学习内容如下: 概论,各种开发语言的对比,高级语言包括:python(开发效率高,执行效率低) Java(开发效率低,执行效率高),PHP,低级语言包括:C语言,汇编语言: Python 语言 ...

  6. int和Integer的自动拆箱/装箱相关问题

    java中为没一种基本类型都提供相应的包装类型. byte,short,char,int,long,float,double和boolean Byte,Short,Character,Integer, ...

  7. cfile fopen fopen_s win10下打开文件失败

    vc程序在win10下面使用fopen 打开文件失败,在网上查 了下是因为UAC权限的问题如下: 由于windows vista win7 win8 win 10 添加了UAC权限,所以会导致 在系统 ...

  8. ceph结构详解

    引言 那么问题来了,把一份数据存到一群Server中分几步? Ceph的答案是:两步. 计算PG 计算OSD 计算PG 首先,要明确Ceph的一个规定:在Ceph中,一切皆对象. 不论是视频,文本,照 ...

  9. 关于extern的使用

    学的时候不认真总结,用的时候就一堆bug. 上回也是调extern调了半天,今天又犯老毛病. data 比如说是要用到的的在main函数中不断刷新的量.那么这个unsigned int data 要写 ...

  10. IP路由实验之---Telnet远程登陆

    实验设备:一台华三路由器,一台PC 骤一,为路由器端口配置 IP 地址 <H3C>system-view #进入系统视图 [H3C] / #进入0/0端口 [H3C-Ethernet-/] ...