Jmeter接口自动化(转载)

Posted 喜欢欢~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jmeter接口自动化(转载)相关的知识,希望对你有一定的参考价值。

转载自  http://www.cnblogs.com/chengtch/p/6145867.html

本文转载于上面的网址,稍作修改,实用性更强。

Jmeter是压力测试、接口测试工具,Ant是基于Java的构建工具,具有跨平台的作用,jenkins是持续集成工具。将这三者结合起来可以搭建一套webservice接口测试的持续构建环境。

 

  1、安装JDK,配置java环境变量(略过)

  2、安装Jmeter,这里用到的版本是3.2(安装过程略过)

  3、安装 ANT

    3.1 下载安装

      下载地址 http://ant.apache.org/bindownload.cgi,下载后解压到指定位置即可,

      比如:F:\\apache-ant-1.10.1-bin\\apache-ant-1.10.1

    3.2 配置环境变量

    Windows中设置ant环境变量:

    ANT_HOME  F:\\apache-ant-1.10.1-bin\\apache-ant-1.10.1

    path    F:\\apache-ant-1.10.1-bin\\apache-ant-1.10.1\\bin

    classpath      F:\\apache-ant-1.10.1-bin\\apache-ant-1.10.1\\lib

    3.3 安装验证

      验证安装结果,命令行输入ant -v ,出现版本信息则安装成功

     

  4、ANT中配置Jmeter  

          4.1、配置库文件

 

                  将jmeter extras目录下的ant-jmeter-1.1.1.jar 文件拷贝到ant安装目录下的lib文件夹中

       copy from:

      

       paste to:

      

 

    4.2  配置ANT与Jmeter的配置文件

                 4.2.1 配置ant 编译文件 build.xml,build.xml配置文件与测试脚本同目录 

       拷贝下面的内容与新建的txt文件中,并将此文件改名为:build.xml,按实际情况修改build.xml文件            

 
<?xml version="1.0" encoding="UTF8"?>

<project name="ant-jmeter-test" default="run" basedir=".">
    <tstamp>
     <format property="time" pattern="yyyyMMddhhmm"/>
    </tstamp>
    <!-- 需要改成自己本地的 Jmeter 目录-->  
    <property name="jmeter.home" value="F:\\Jmeter\\apache-jmeter-3.2" />
    <!-- jmeter生成jtl格式的结果报告的路径-->
    <property name="jmeter.result.jtl.dir" value="F:\\report\\jtl" />
    <!-- jmeter生成html格式的结果报告的路径-->
    <property name="jmeter.result.html.dir" value="F:\\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="1076375446@qq.com" />   
    <property name="lib.dir" value="${jmeter.home}/lib"/>

    <path id="xslt.classpath">
        <fileset dir="${lib.dir}" includes="xalan*.jar"/>
        <fileset dir="${lib.dir}" includes="serializer*.jar"/>
    </path>


    <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脚本,若想执行某一个脚本时,将includes="*.jmx"中的"*"修改为具体脚本名称即可-->
            <testplans dir="F:\\Jmeter\\apache-jmeter-3.2\\bin\\app" includes="*.jmx" />
        <property name="jmeter.save.saveservice.output_format" value="xml"/>
    </jmeter>
    </target>

    <target name="report">
        <xslt
       classpathref="xslt.classpath"
           force="true"
           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>

           根据build.xml中结果报告的路径创建文件

                  

   4.2.2 配置jmeter.properties

       配置jmeter报告输出格式为xml在jmeter根目录下jmeter.properties文件中修改jmeter.save.saveservice.output_format=csv 为

     jmeter.save.saveservice.output_format=xml,并去掉前面的注释符号#

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

 

                

  4.3 验证配置,执行构建测试

    4.3.1 准备测试脚本数据

        build配置文件放在与测试脚本同目录

       

    4.3.2 执行测试      

       命令行cdbuild.xml文件所在目录,输入ant run ,执行测试(路径最好不要用中文)

      

      看到build successful 则说明构建测试成功

     4.3.3 报告输出路径下查看测试结果报告

        按build.xml文件中设置的测试报告地址找到html版测试报告

       

 

        打开看看:测试结果展现了用例数、成功率、用例执行时间等结果参数

       

          5、配置jenkins

              5.1 、jenkins.war的下载与安装,下载后放到d盘根目录

             5.2 、配置环境变量,设置JENKINS_HOME

                                     

               5.3 、解压并启动jenkins

                         命令行输入java -jar jenkins.war,浏览器中输入url:jenkins所在主机IP 端口:8080 ,打开jenkins

        配置用户名、密码及插件,这里需要配置invoke ant插件、HTML测试报告展示的插件

     5.4、新建并配置一个JOB

        

        设置项目名称:

        

       配置构建:

       

        配置构建:

        有两种方式可以调用:
       1.直接在增加构建步骤中选择“Invoke Ant”,在新加的选择框中Build File后面填写html报告的存放目录,

        如:F:\\report 点击save后构建即可
     

2.直接在增加构建步骤中选择“Execute Windows batch command”填写command命令即可。        


      以上两种方法中,第一种方法需要jenkins上先安装ant,进入系统管理-Global Tool Configuration,选择安装ant.否则会提示ant.bat找不到    

配置测试报告插件,用于打开测试结果报告

  Publish HTML reports需要提前安装这个插件:

  (在https://wiki.jenkins.io/display/JENKINS/HTML+Publisher+Plugin路径下下载 htmlpublisher.hpi文件,然后在http://localhost:8080/pluginManager/advanced 此路径下上传此插 件点击上传按钮即可

  ( HTML directory to archive 中填写html报告的存放目录,Index page[s]填写该报告的名称,比如我的这份报告名字叫做index.html,那我在这里就填写上index.html,否则会提示找不到。最后的Report title,随意填写即可。)

                         

基本配置完成

 

      5.5、JOB主页,点击立即构建,执行测试,构建完成即可通过HTML_Report来查看测试结果

          

 

                      继续构建基本完成,另外还 可以配置邮件插件来发送测试报告,设置构建时间来定时自动执行测试       

以上是关于Jmeter接口自动化(转载)的主要内容,如果未能解决你的问题,请参考以下文章

WEB接口测试之Jmeter接口测试自动化 (数据驱动测试) 接口测试与数据驱动

JMeter接口测试-模块控制器

Jmeter接口测试自动化 (数据驱动测试)

转载Jmeter接口测试+压力测试

使用Jmeter进行http接口测试(转载)

使用Jmeter进行http接口测试(转载)