Jmeter+ant+Jenkins集成

一. 环境准备

安装Jmeter,配置相关环境;

安装Ant:

下载地址: http://ant.apache.org/

配置系统环境变量:

          新建ANT_HOME:E:\Java\apache-ant-1.9.14

          在Path中添加:%ANT_HOME%\bin  

 

配置完成后,打开cmd窗口,输入:ant -v,如下截图,说明ant环境配好:

3. 安装Jenkins: https://jenkins.io/index.html

下载war包,放入tomcat中\webapps 目录下,启动tomcat,访问 http://localhost:8080/jenkins

下载Jenkins安装包(Windows),解压缩,插件选择推荐,傻瓜式安装,安装成功后浏览器访问:http://localhost:8080

二. Jmeter编写脚本+Ant执行脚本&生成报告

在Jmeter目录下,新建文件夹TestCase(也可以换个路径创建)

 2.、Jmeter编写脚本:

           编写任意接口测试脚本,保存至TestCase目录下

3、 修改jmeter配置文件jmeter.properties:

            把jmeter.save.saveservice.output_format=csv修改为jmeter.save.saveservice.output_format=xml,删除前面的#号

(修改原因: jmeter执行结果文件默认保存的是csv格式,不是xml格式,csv无法转化成html格式)

4、 在jmeter的extras目录下,把ant-jmeter-1.1.1.jar文件复制到ant的lib目录下

5、在TestCase目录下,创建build.xml文件(ant执行脚本时会使用),内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<project name="ant-jmeter-test" default="run" basedir='.'>
       <tstamp>
        <format property="time" pattern="yyyyMMddhhmm"/>
    </tstamp>


    <!-- 需要改成自己本地的Jmeter目录 -->
    <property name="jmeter.home" value="E:\Java\apache-jmeter-3.1"/>
    <!-- jmeter生产jtl格式的结果报告路径 -->
    <property name="jmeter.result.jtl.dir" value="E:\Java\apache-jmeter-3.1\TestCase\report\jtl"/>
    <!-- jmeter生产html格式的结果报告路径 -->
    <property name="jmeter.result.html.dir" value="E:\Java\apache-jmeter-3.1\TestCase\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"/>

    <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}">
            <testplans dir="E:\Java\apache-jmeter-3.1\TestCase" includes="*.jmx"/>
        </jmeter>
    </target>


    <!-- 生成报告 -->
    <target name="report">
       <xslt in="${jmeter.result.jtlName}" out="${jmeter.result.htmlName}" style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl">
        </xslt>
        <copy todir="${jmeter.result.html.dir}">
            <fileset dir="${jmeter.home}/extras">
                <include name="collapse.png" />
                <include name="expand.png" />
            </fileset>
        </copy>
    </target>

</project>

 

6、在TestCase目录下,创建TestCase\report\html   TestCase\report\jtl,用来分别保存html,jtl格式的测试报告:

7、  最后TestCase目录下的结构如下:

 

 

8. 到TestCase目录下,执行ant命令,自动执行Jmeter测试脚本,如下则运行成功:

 

   9. 运行成功后,进入TestCase\report下可查看html与jtl报告文件,打开html报告如下:

 10.  Jmeter+Ant生成的测试报告中,Min Time和Max Time现实NaN。解决办法:仅需从Jmeter的lib包中把xalan-2.7.2.jar和 serializer-2.7.2.jar复制到Ant的lib包中即可,不需要修改build.xml:

 

 3、jenkins下载安装:

Tomcat下载安装配置:参考地址:https://www.cnblogs.com/limn/p/9358657.html

Jenkins下载地址:http://mirrors.jenkins-ci.org/war/2.229/下载war包,放入tomcat中\webapps 目录下,启动tomcat,访问 http://localhost:8080/jenkins

 

输入用户名密码登录Jenkins,点击Jenkins--Manager Jenkins--manage plugins,搜索插件:HTML Publisher 和 Ant In Workspace

 

 

 

 

安装完后进入Jenkins首页,点击新建Item,选择 Freestyle project,然后点击确定

任务创建后,点击构建触发器,选择Build periodically,在文本框输入H/30 * * * *  这个代表30分支自动构建一次。

 

 

点击环境构建,勾选Custom Ant in workspace ,path to custom ant in workspace配置自己安装的ant目录:

 

 构建点击增加勾选步骤,在targets中输入run即可,

 

进入构建后操作栏,点击增加构建后操作步骤。

HTML directory to archive:存放HTML报告的路径

index page[s]:与build.xml文件中设置的生产html格式报告名称一致

Report titile:默认即可,不用修改

 

 

 配置完成后点击应用,然后进入Jenkins首页,选择任务点击build,即可在控制台查看构建日志了,等构建完成,就会在对应的目录生成测试报告了!

 

 

 

 

posted @ 2020-03-30 19:13  yinrw  阅读(401)  评论(0编辑  收藏  举报