zoukankan      html  css  js  c++  java
  • ant 执行jmeter脚本

    • 环境准备

    1、jdk版本:java version "1.8.0_201"

    2、jmeter版本:5.0

    3、ant版本:Apache Ant(TM) version 1.10.5

    版本都是对应的,看似一切美好;

    4、将 jmeter的extras目录中ant-jmeter-1.1.1.jar包拷贝至ant安装目录下的lib目录中

    5、修改Jmeter的bin目录下jmeter.properties文件的配置:jmeter.save.saveservice.output_format=xml  

    • 脚本准备

    导出的脚本为baidu.jmx,并把结果模板文件拷过来,配置build.xml 

    命令行中,切换到当前目录,执行run命令就可以了;

    不过出问题了,执行run后,走到输出jml文件的时候就提示遇到严重问题 java se停止运行,查了不少资料,之前的build是从jmeter里拷过来的,后来准备放弃了,想再试下会不会是build文件的问题,就从网上考了一个下来,没想到还真是build文件的问题:

    <?xml version="1.0" encoding="UTF-8"?>  
      
    <project name="ant-jmeter-test" default="run" basedir=".">  
          
        <tstamp>  
            <format property="time" pattern="yyyyMMddhhmm" />  
        </tstamp>
        <!-- jmeter中extras路径 -->
        <property name="basedirectory" value="C:UsersadminDesktopjmeterapache-jmeter-5.0apache-jmeter-5.0extras" />  
        <!-- 需要改成自己本地的 Jmeter 目录-->    
        <property name="jmeter.home" value="C:UsersadminDesktopjmeterapache-jmeter-5.0apache-jmeter-5.0" />  
        <!-- jmeter生成jtl格式的结果报告的路径-->   
        <property name="jmeter.result.jtl.dir" value="C:UsersadminDesktopjmeterapache-jmeter-5.0demoant
    eport" />  
        <!-- jmeter生成html格式的结果报告的路径-->  
        <property name="jmeter.result.html.dir" value="C:UsersadminDesktopjmeterapache-jmeter-5.0demoant
    eport" />  
        <!-- Name of test (without .jmx) -->  
        <property name="test" value="Test"/>  
        <!-- 生成的报告的前缀-->    
        <property name="ReportName" value="TestReport" />  
        <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${test}.jtl" />  
        <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${test}.html" />  
        <property name="jmeter.save.saveservice.output_format" value="xml"/> 
        <path id="xslt.classpath">  
            <fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>  
            <fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>  
        </path>  
        
        <!-- 运行了两个标签中的内容-->  
        <target name="run">  
            <!--测试脚本标签对应下面的jMeter脚本-->
            <antcall target="test" /> 
            <!--测试脚本标签对应下面的jMeter脚本后产生测试报告的--> 
            <antcall target="report" />  
        </target>  
         
        <!--JMeter脚本执行,name属性值和上面name中标签下的<antcall target="test" /> 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"我没试过,只用系统自带的一个脚本Test.jmx脚本,式了下可以用-->  
                <testplans dir="C:UsersadminDesktopjmeterapache-jmeter-5.0demoant" includes="baidu.jmx" />  
            </jmeter>  
        </target>  
     
         <!--JMeter脚本执行,name属性值和上面name中标签下的<antcall target="report" /> target值对应-->     
        <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="C:UsersadminDesktopjmeterapache-jmeter-5.0demoantjmeter-results-detail-report_21.xsl"> 
                  <!-- jmeter报告模板-->  
                  <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>
    • 运行,生产的报告如下

  • 相关阅读:
    WCF 第十三章 可编程站点 为站点创建操作
    WCF 第十三章 可编程站点 所有都与URI相关
    WCF 第十二章 对等网 使用自定义绑定实现消息定向
    WCF 第十三章 可编程站点 使用WebOperationContext
    Using App.Config for user defined runtime parameters
    WCF 第十三章 可编程站点
    WCF 第十三章 可编程站点 使用AJAX和JSON进行网页编程
    WCF 第十二章 总结
    WCF 第十三章 可编程站点 使用WebGet和WebInvoke
    WCF 第十三章 可编程站点 URI和UriTemplates
  • 原文地址:https://www.cnblogs.com/shilimaixiang/p/10465001.html
Copyright © 2011-2022 走看看