【JMeter】linux下采用Jenkins、Ant实施jmeter自动化测试集成方案操作步骤(结合网上资料,纠正部分操作)

来源:互联网 发布:win10对e3有优化吗 编辑:程序博客网 时间:2024/06/11 01:22


      步骤1:自行下载和安装JDK,jmeter,badboy,jenkins,Maven、ant,并配置好环境变量。

我的版本分别是:JDK1.7、jmeter2.13;jenkins 2.7.2 ; ant 1.9.7; Mave3.3.9(这里可以不需要)

注:一定要先确保以上环境可以OK或启动。

 

      步骤2:在jenkins中的系统管理->系统配置中配置Ant。

 

      步骤3.在jmeter中找到ant-jmeter-1.1.1.jar(在extras目录下)和xalan-2.7.2.jar和serializer-2.7.2.jar(在lib下),并将这些文件copy到Ant安装路径中lib文件夹中,如我的Ant目录:

 

       步骤4.在jmeter中创建一个jmx的脚本(注:手写和录制都可以,注意引用参数化文件或其他包时,文件或包的存放路径,要已linux上为准,否则找不到);

 

      步骤5.手动建立一个build.xml的文件(注:修改jmeter、生成报告、脚本路径),在jmeter的文件里新建一个文件夹存放或者其他路径下,比如我的存放路径/usr/local/jmeter2.13/apache-jmeter-2.13/demo下

build.xml文件内容:


<?xml version="1.0" encoding="UTF-8"?>
<project name="ant-jmeter-test" default="run" basedir=".">
    <!-- 需要改成自己本地的 Jmeter 目录-->  
    <property name="jmeter.home" value="/usr/local/jmeter2.13/apache-jmeter-2.13" />
    <property name="report.title" value="接口测试"/>
    <!-- jmeter生成jtl格式的结果报告的路径--> 
    <property name="jmeter.result.jtl.dir" value="/usr/local/jmeter2.13/TestCase" />
    <!-- jmeter生成html格式的结果报告的路径-->
    <property name="jmeter.result.html.dir" value="/usr/local/jmeter2.13/TestCase" />
    <!-- 生成的报告的前缀-->  
    <property name="ReportName" value="TestReport" />
    <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}.jtl" />
    <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}.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}">
            <!-- 声明要运行的脚本"*.jmx"指包含此目录下的所有jmeter脚本-->
            <testplans dir="/usr/local/jmeter2.13/TestCase" includes="login.jmx" />
            
            <property name="jmeter.save.saveservice.output_format" value="xml"/>
        </jmeter>
    </target>
        
    <path id="xslt.classpath">
        <fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
        <fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
    </path>

    <target name="report">
        <tstamp> <format property="report.datestamp" pattern="yyyy/MM/dd HH:mm" /></tstamp>
        <xslt 
            classpathref="xslt.classpath"
            force="true"
            in="${jmeter.result.jtlName}"
            out="${jmeter.result.htmlName}"
            style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl">
            <param name="dateReport" expression="${report.datestamp}"/>
        </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:进入jmeter的bin目录下找到jmeter.properties文件,修改内容如下:

jmeter.save.saveservice.output_format=csv

改成:

jmeter.save.saveservice.output_format=xml

 

    步骤7.在jenkins系统管理->管理插件中查找和安装插件Performance plugin、HTML Publisher plugin

 

    步骤8.在jenkins新建项目,新建过程中记得增加构建步骤;

   注:1、在项目中,配置Ant(配置build.xml构建文件路径)、执行shell命令(要将生成报告路径下的.jtl、html、png文件copy到jenkins新建项目的workspace文件夹中)

   2、在项目中,选择“增加构建后操作步骤”,增加Publish HTML report和Publish Performance test result report项,并配置生成报告路径

      

      步骤9.完成后直接构建,查看html报告和Performance Trend结果,如下:

 

遇到的问题:

1.build.xml文件中所需要修改的内容,之前遇到多种错误,Jmeter所在路径不对、

jmeter与老版本的报表文件名不同、HTML报表数据无法显示,只显示NAN,只要修改为:jmeter-results-detail-report_21.xsl,即可

2 0