• Jmeter+Ant+Jenkins实现接口自动化(转载)


    转载自  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-binapache-ant-1.10.1

        3.2 配置环境变量

        Windows中设置ant环境变量:

        ANT_HOME  F:apache-ant-1.10.1-binapache-ant-1.10.1

        path    F:apache-ant-1.10.1-binapache-ant-1.10.1in

        classpath      F:apache-ant-1.10.1-binapache-ant-1.10.1lib

        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:Jmeterapache-jmeter-3.2" />
        <!-- jmeter生成jtl格式的结果报告的路径-->
        <property name="jmeter.result.jtl.dir" value="F: eportjtl" />
        <!-- jmeter生成html格式的结果报告的路径-->
        <property name="jmeter.result.html.dir" value="F: eporthtml" />
        <!-- 生成的报告的前缀-->  
        <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:Jmeterapache-jmeter-3.2inapp" 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: eport 点击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来查看测试结果

              

     

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

  • 相关阅读:
    Hive和HBase的区别
    HBase面试问题
    HBase的rowkey的设计原则
    一、spark 数据类型(Data Types)
    Phaser显示对象(文字)
    Phaser中的组对象group
    Phaser中的动画
    phaser.js 显示对象笔记
    MD5之C#密码加密备忘录
    学了点小小的技巧,也有一点点问题,怎么解决呢?
  • 原文地址:https://www.cnblogs.com/hc1020/p/7807848.html
Copyright © 2020-2023  润新知