zoukankan      html  css  js  c++  java
  • 使用jmeter+ant进行接口自动化测试(数据驱动)之二:利用apache-ant执行测试用例并生成HTML格式测试报告

     使用jmeter+ant进行接口自动化测试(数据驱动)之一 介绍了如何使用csv文件来批量管理接口

    本次接着介绍如何利用apache-ant执行测试用例并生成HTML格式测试报告

    ①下载安装 apache-ant-1.9.9,配置环境变量

    如下方式检验安装成功

    ②安装好ant后,把jmeter中extras目录下的ant-jmeter-1.1.1.jar 文件copy到ant安装目录下的lib文件夹中

    配置ant 编译文件 build.xml

    新建一个txt文件,并重名为 build.xml,内容如下

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <project name="ant-jmeter-test" default="run" basedir=".">
     3 <tstamp>
     4 <format property="time" pattern="yyyyMMddhhmm" />
     5 </tstamp>
     6 <!-- 需要改成自己本地的 Jmeter 目录-->
     7 <property name="jmeter.home" value="D:worksoftapache-jmeter-3.1" />
     8 <!-- jmeter生成jtl格式的结果报告的路径-->
     9 <property name="jmeter.result.jtl.dir" value="D:worksoftapache-jmeter-3.1incommonservicesmoke_report" />
    10 <!-- jmeter生成html格式的结果报告的路径-->
    11 <property name="jmeter.result.html.dir" value="D:worksoftapache-jmeter-3.1incommonservicesmoke_report" />
    12 <!-- 生成的报告的前缀-->
    13 <property name="ReportName" value="TestReport" />
    14 <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" />
    15 <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}.html" />
    16 <target name="run">
    17 <antcall target="test" />
    18 <antcall target="report" />
    19 </target>
    20 <target name="test">
    21 <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
    22 <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
    23 <!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本-->
    24 <testplans dir="D:worksoftapache-jmeter-3.1incommonservice" includes="统一申办接口.jmx" />
    25 
    26 <property name="jmeter.save.saveservice.output_format" value="xml"/>
    27 </jmeter>
    28 </target>
    29 
    30 <path id="xslt.classpath">
    31 <fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
    32 <fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
    33 </path>
    34 
    35 <target name="report">
    36 <tstamp> <format property="report.datestamp" pattern="yyyy/MM/dd HH:mm" /></tstamp>
    37 <xslt
    38 classpathref="xslt.classpath"
    39 force="true"
    40 
    41 in="${jmeter.result.jtlName}"
    42 out="${jmeter.result.htmlName}"
    43 style="${jmeter.home}/extras/jmeter.results.shanhe.me.xsl" />
    44 
    45 <!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
    46 <copy todir="${jmeter.result.html.dir}">
    47 <fileset dir="${jmeter.home}/extras">
    48 <include name="collapse.png" />
    49 <include name="expand.png" />
    50 </fileset>
    51 </copy>
    52 </target>
    53 </project>

    根据实际情况修改build.xml文件

    配置jmeter.properties

     配置jmeter报告输出格式为xmljmeter的bin目录下jmeter.properties文件中修改jmeter.save.saveservice.output_format=csv  jmeter.save.saveservice.output_format=xml,并去掉前面的注释符号#

    ⑤将jmeter脚本、build.xml文件和测试数据放到同一个文件夹中,执行测试

    在命令行窗口切换到jmeter脚本存放路径,输入ant run,执行测试

    执行完成后查看测试报告,如下所示,是使用jmeter自带的报告模板

     ⑥测试报告进一步优化

    网上下载优化模板 jmeter.results.shanhe.me.xsl,拷贝到jmeter的extras目录中

    然后在jmeter.properties中,设置需要输出的内容为true,并去掉前面的注释符号#,这里全部设置成true

    设置build文件的报告模板为优化后的模板

    再次用ant执行测试,查看优化后的测试报告

    附:jmeter.results.shanhe.me.xsl下载链接
    
    https://pan.baidu.com/s/1eTki1KQ 密码:jsuw
  • 相关阅读:
    ABAP 程序中的类 沧海
    ABAP类的方法(转载) 沧海
    More than 100 ABAP Interview Faq's(2) 沧海
    SAP and ABAP Memory总结 沧海
    ABAP Frequently Asked Question 沧海
    ABAP System Reports(Additional functions) 沧海
    ABAP Questions Commonly Asked 1 沧海
    ABAP Tips and Tricks 沧海
    ABAP System Fields 沧海
    ABAP 面试问题及答案(一):数据库更新及更改 SAP Standard (转) 沧海
  • 原文地址:https://www.cnblogs.com/hanmk/p/8299234.html
Copyright © 2011-2022 走看看