jmeter3.0+ant1.10+jenkins实现接口自动化并发送邮件

网上有很多关于接口自动化的文章,此篇仅用于记录自己的学习记录用。jmeter3.0+ant1.10+jenkins实现接口自动化并发送邮件

目录

1、环境准备

2、build.xml准备

3、jenkins配置

1、环境准备

a.装好jdk1.8

确认环境配好了:

b.装好ant1.10.1

ant和jmeter一样配置好环境变量就可以使用了,需要配置如下:

ANT_HOME=E:\apache-ant-1.10.1

CLASSPATH=E:\apache-ant-1.10.1\lib

PATH=E:\apache-ant-1.10.1\bin

确认配置正确:

c.装好jenkins(在官网下载最新版即可)

准备好jenkins.war包,我们可以通过启动应用服务器程序中间件(tomcat)的方式或者java程序来启动jenkins服务,这里我用java程序启动服务安装安装:

在jenkins.war目录下执行java -jar jenkins.war启动安装,然后通过http://localhost:8080/访问jenkins,填充dos中的密码命令行或者到提示的目录中找到密码粘贴到页面密码输入框;安装推荐的插件,设置用户名密码,即可完成安装

由于我的之前已经安装完成,所以再次启动页面如下:

d.ant的lib文件更新

1、将 jmeter的extras目录中ant-jmeter-1.1.1.jar包拷贝至ant安装目录下的lib目录中

2、往ant的lib目录放javax.mail.jar或者mail-1.4.7.jar+activation-1.1.1.jar 

 2、build.xml准备

a.修改Jmeter3.0的bin目录下jmeter.properties文件的配置:jmeter.save.saveservice.output_format=xml

b.配置好build.xml

在jmeter目录下,建立demo文件夹,放入脚本文件(用jmeter编译通过的)和build文件(新建一个xml文件,补充内容)

完整的build文件内容如下,可根据实际情况进行修改:

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project name="ant-jmeter-test" default="run" basedir=".">
 3     <tstamp>
 4         <format property="time" pattern="yyyyMMddhhmm" />
 5     </tstamp>
 6    <!-- 配置为本机jmeter安装实际路径 -->
 7     <property name="jmeter.home" value="D:\Program Files\apache-jmeter-3.1" /> 
 8     <!-- 配置为本机jtl报告放置路径 -->
 9     <property name="jmeter.result.jtl.dir" value="D:\Program Files\apache-jmeter-3.1\report\jtl" /> 
10     <!-- 配置为本机html报告放置路径 -->
11     <property name="jmeter.result.html.dir" value="D:\Program Files\apache-jmeter-3.1\report\html" />
12     
13     <property name="ReportName" value="TestReport" />
14     <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" />
15     <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}${time}.html" />
16      <!-- 接收测试报告的邮箱 -->  
17     <property name="mail_to" value="[email protected]" />  
18     <target name="run">
19         <antcall target="test" />
20         <antcall target="report" />
21         <antcall target="sendmail" />
22     </target>
23     
24     <target name="test">
25         <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
26         <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
27             
28             <testplans dir="D:\Program Files\apache-jmeter-3.1\demo" includes="*.jmx" />
29 
30    <property name="jmeter.save.saveservice.output_format" value="xml"/>
31 
32         </jmeter>
33     </target>
34  
35     <!-- 解决不显示时间 下方-->
36     <path id="xslt.classpath">
37         <fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
38         <fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
39     </path>
40    
41     <target name="report">
42      <tstamp> <format property="report.datestamp" pattern="yyyy/MM/dd HH:mm" /></tstamp>
43         <xslt classpathref="xslt.classpath"
44               force="true"                  
45               in="${jmeter.result.jtlName}"
46               out="${jmeter.result.htmlName}"
47               style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl">
48      <param name="dateReport" expression="${report.datestamp}"/>
49         </xslt>
50         <!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->       
52         <copy todir="${jmeter.result.html.dir}">
53             <fileset dir="${jmeter.home}/extras">
54                 <include name="collapse.png" />
55                 <include name="expand.png" />
56             </fileset>
57         </copy>
58     </target>
59  
60   <!-- 发送邮件-->
61  <target name="sendmail" >  
62         <mail mailhost="smtp.163.com"  
63             mailport="465"  
64             ssl="true"        
65             user="[email protected]"  
66             password="123456"  
67             subject="测试报告"  
68             from="[email protected]" 
69 >
70             <to address="[email protected]"/>  
71             <message>请查看附件</message>  
72               <attachments>  
73                 <fileset dir="${jmeter.result.html.dir}">   
74                   <include name="${ReportName}${time}.html"/>  
75                 </fileset>   
76               </attachments>  
77          </mail>
78  </target>
79 </project>

 3、jenkins配置

a.创建一个自由风格的job

b.做好构建配置

c.点击立即构建即可

构建完毕,就可以收到一封带有接口测试报告的邮件了

猜你喜欢

转载自www.cnblogs.com/weizhideweilai/p/9215905.html
今日推荐