一. 环境准备
- 安装Jmeter,配置相关环境;
安装Ant:
下载地址: http://ant.apache.org/
验证命令窗口:ant -v
2.配置系统环境变量:
新建ANT_HOME:F:\apache-ant-1.10.10-bin\apache-ant-1.10.10
在Path中添加:%ANT_HOME%\bin (系统变量中无效的话,在用户变量中也添加 )
3.安装Jenkins: https://jenkins.io/index.html
Jenkins的Web应用程序ARchive(WAR)文件版本可以安装在任何支持Java的操作系统或平台上。
要下载并运行Jenkins的WAR文件版本,请执行以下操作:
将最新的稳定Jenkins WAR包 下载到您计算机上的相应目录。在下载的目录内打开一个终端/命令提示符窗口到。 运行命令java -jar jenkins.war。浏览http://localhost:8080并等到*Unlock Jenkins*页面出现。 继续使用Post-installation setup wizard后面步骤设置向导。
注:密钥文件指定目录
二. Jmeter编写脚本+Ant执行脚本&生成报告
- 在Jmeter目录下,新建文件夹jmeter专门保存脚本(也可以换个路径创建):
- 修改jmeter配置文件jmeter.properties:
- 把jmeter.save.saveservice.output_format=csv修改jmeter.save.saveservice.output_format=xml,并不要注释:
- 在jmeter的extras目录下,把ant-jmeter-1.1.1.jar文件复制到ant的lib目录下:
- 在jmeter目录下,创建 jmeter\report\html jmeter\report\jtl,用来分别保存html,jtl格式的测试报告,脚本执行成功后可在对应的目录查看报告:
- 在jmeter目录下,创建build.xml文件(ant执行脚本时会使用),内容如下:
- 到jmeter目录下,cmd执行ant命令,自动执行Jmeter测试脚本,则运行成功:
<?xml version="1.0" encoding="UTF8"?>
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="D:\apache-jmeter-5.1\apache-jmeter-5.1"/>
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="D:\apache-jmeter-5.1\apache-jmeter-5.1\jmeter\report\jtl"/>
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="D:\apache-jmeter-5.1\apache-jmeter-5.1\jmeter\report\html"/>
<!-- 生成的报告的前缀 -->
<property name="ReportName" value="TestReport" />
<property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl"/>
<property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}${time}.html"/>
<!-- 接收测试报告的邮箱 -->
<property name="mail_to" value="ly137697@163.com"/>
<!-- 电脑地址 -->
<property name="ComputerName" value="WYJ"/>
<target name="run">
<antcall target="test"/>
<antcall target="report"/>
</target>
<target name="test">
<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"/>
<jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
<!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本 -->
<testplans dir="D:\apache-jmeter-5.1\apache-jmeter-5.1\jmeter" includes="agent.jmx"/>
<property name="jmeter.save.saveservice.output_format" value="xml"/>
</jmeter>
</target>
<target name="report">
<xslt in="${jmeter.result.jtlName}" out="${jmeter.result.htmlName}" style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl"/>
<!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png"/>
<include name="expand.png"/>
</fileset>
</copy>
</target>
<!-- 发送邮件 -->