标签:
前置条件:首先我们默认Jmeter脚本已经录制好了,并测试通过,存在如下脚本

前期条件:存在Jmeter聚合测试报告TestReport201510100244.jtl
下载ant地址
配置环境变量

命令行窗口输入ant

安装成功
文件夹目录结构:
D:\jemeterTest

<?xml version="1.0" encoding="UTF-8"?>
<project name="JmeterTest" default="all" basedir=".">
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="D:\soft\apache-jmeter-2.9" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="D:\jemeterTest\resultLog\jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="D:\jemeterTest\resultLog\html" />
<!-- jtl文件-->
<property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/TestReport201510100244.jtl" />
<!-- 生成HTML文件 -->
<property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/TestReport201510100244.html" />
<target name="all">
<antcall target="report" />
</target>
<target name="report">
<xslt in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}"
<!-- Jmeter自带的XSLT样式表在目录extras下面-->
style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl" />
</target>
</project>4、切换到D:\jemeterTest目录下,输入ant查看运行结果,在D:\jemeterTest\resultLog\html目录下生成TestReport201510100244.html文件



这个问题比较奇葩,我的初步定为思路如下
将TestReport201510100244.jtl文件的第二行加入
<?xml-stylesheet type="text/xsl" href="D:/soft/apache-jmeter-2.9/extras/jmeter-results-detail-report_21.xsl"?>
用浏览器打开显示正常,初步排除了XSLT样式表问题

2)编写java程序,用程序去调取jmeter-results-detail-report_21.xsl,运行,发现报错,提示
致命错误: "无法编译样式表",
从网上找到了解决方案,要下载一个XALAN.Jar包放到项目中即可解决这个问题
3)将这两个jar包入ant的lib包中再次切换到D:\jemeterTest目录下,输入ant查看运行结果,在D:\jemeterTest\resultLog\html目录下生成TestReport201510100244.html文件,使用浏览器查看,OK,显示了!

我们发现在界面上没有显示,90%line,这个性能指标项,在这里我们需要修改XSLT样式表,jmeter-results-detail-report_21.xsl增加部分内容后的文件如下:
注:90%Line逻辑(网上找的释疑)
一组数由小到大进行排列,找到他的第90%个数(假如是10),那么这个数组中有90%的数将小于等于120。
用在性能测试的响应时间也将非常有意义,也就是90%用户响应时间不会超过12 秒
1)修改build.xml文件中的内容style="${jmeter.home}/extras/jmeter-results-detail-report_90Line.xsl" 然后切换到D:\jemeterTest目录下,输入ant查看运行结果,在
D:\jemeterTest\resultLog\html目录下生成TestReport201510100244.html文件,成功了!

主要逻辑思路:运行D:\jemeterTest\script下面的.jmx脚本,生成.jtl文件放入D:\jemeterTest\resultLog\jtl文件中,ant在将相应的文件转换为对应的html文件放入D:\jemeterTest\resultLog\html中
Note: As of JMeter 1.9RC2(?), the default results output format is now csv. It must be changed to xml in order to use the xslt task to create the html report:
jmeter默认保存的是.csv格式的文件,所以我们先要设置一下bin/jmeter.properties文件内容,保存
jmeter.save.saveservice.output_format=xml |
build.xml文件中的内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<project name="JmeterTest" default="all" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="D:\soft\apache-jmeter-2.9" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="D:\jemeterTest\resultLog\jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="D:\jemeterTest\resultLog\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="LIUCHAO448@pingan.com.cn"/>
<!-- 电脑地址 -->
<property name="ComputerName" value="jkqsh-l0285"/>
<target name="all">
<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:\jemeterTest\script" includes="*.jmx" />
</jmeter>
</target>
<target name="report">
<xslt in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}"
style="${jmeter.home}/extras/jmeter-results-detail-report_90Line.xsl" />
<!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
<!-- 发送邮件 -->
</project>
切换到D:\jemeterTest目录下,输入ant查看运行结果

运行前

运行后

浏览器打开HTML文件,显示正确

1、下载Jenkins安装
2、命令行切换到jenkins.war的根目录,输入 java -jar jenkins.war

3、浏览器输入地址http://localhost:8080/显示界面,安装成功

4、新建一个任务并配置

5、配置参数

旧的构建保存了你在一次构建中的所有临时文件,如果构建没有保留的必要,就勾选丢弃旧的构建,同时设置保持构建天使和保持构建的最大个数两个参数。
注意:三个设置必须同时设置,否则无效
6、设置定时运行间隔,这里,设置间隔时间为15分钟运行一次

7、设置invoke ant,完成后点击保存

8、点击立即构建,就可以调用ant,执行打包过程。在这里,也就是执行生成测试报告的步骤

标签:
原文地址:http://my.oschina.net/hellotest/blog/516079