首页 > 其他 > 详细

jenkins+ant+jmeter环境搭建

时间:2020-12-04 21:40:38      阅读:42      评论:0      收藏:0      [点我收藏+]

1)ant安装配置

下载链接:http://ant.apache.org/bindownload.cgi

技术分享图片

环境变量配置:ANT_HOME: D:\apache-ant-1.9.15     CLASSPATH: %ANT_HOME%\lib      path: %ANT_HOME%\bin

验证安装结果:

技术分享图片

2)jenkins安装配置

下载链接:http://jenkins-ci.org

解压后放在磁盘空间较大的盘,浏览器访问http://localhost:8080/(如果8080端口被占用,修改jenkins目录下jenkins.xml文件端口号)

技术分享图片

3)录制jmeter脚本

4)将 jmeter\extras 目录下的 ant-jmeter-1.1.1.jar 放到 D:\apache-ant-1.9.15\lib 目录下

5)配置jmeter的build.xml文件

<?xml version="1.0"?>

<project name="ant-jmeter" default="all" basedir=".">
    <tstamp> 
        <format property="time" pattern="yyyyMMddhhmm" />   
    </tstamp>
    
    <property name="testpath" value="${user.dir}"/>
    <!-- 需要改成自己本地的 Jmeter 目录-->
    <property name="jmeter.home" value="D:\apache-jmeter-3.3" />
    <!-- 需要改成自己本地的 Jmeter 中demo的目录-->
    <property name="test.dir" value="D:\apache-jmeter-3.3\xinguangtest\test" />
    <!-- jmeter生成测试报告的title名称--> 
    <property name="report.title" value="Jmeter Test Results"/>
    <!-- jmeter生成jtl、html格式的结果报告的路径--> 
    <property name="jmeter.result.jtl.dir" value="D:\apache-jmeter-3.3\xinguangtest\test\report\jtl" />   
    <property name="jmeter.result.html.dir" value="D:\apache-jmeter-3.3\xinguangtest\test\report\html" />  
    <!-- 测试报告名称--> 
    <property name="ReportName" value="Load Test Report" />       
    <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}.jtl" />   
    <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/index.html" />   
    <target name="all"> 
        <echo message="start..."/>    
        <!--<antcall target="clean" /> -->
        <antcall target="run" />   
        <antcall target="xslt-report" />      
       </target>   
    

    <!-- Name of test (without .jmx) -->
    <property name="test" value="Test"/>
    
    <!-- Should report include response data for failures? -->
    <property name="show-data" value="n"/>

    <property name="format" value="2.1"/>
    
    <condition property="style_version" value="">
        <equals arg1="${format}" arg2="2.0"/>
    </condition>

    <condition property="style_version" value="_21">
        <equals arg1="${format}" arg2="2.1"/>
    </condition>

    <condition property="funcMode">
        <equals arg1="${show-data}" arg2="y"/>
    </condition>
    
    <condition property="funcMode" value="false">
      <not>
        <equals arg1="${show-data}" arg2="y"/>
      </not>
    </condition>

    <!-- Allow jar to be picked up locally -->
    <path id="jmeter.classpath">
        <fileset dir="${basedir}">
          <include name="ant-jmeter*.jar"/>
        </fileset>
    </path>

    <taskdef name="jmeter"
        classpathref="jmeter.classpath"
        classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"/>
    
    <target name="run">
        <echo>funcMode = ${funcMode}</echo>
        <delete file="${testpath}/${test}.html"/>
        <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" /> 
        <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}"> 
        <!-- 执行这个目录下边所有以.jmx结尾文件 --> 
            <testplans dir="${test.dir}" includes="*.jmx" /> 
            <property name="jmeter.save.saveservice.output_format" value="xml"/>
            <property name="jmeter.save.saveservice.assertion_results" value="all"/>
            <property name="jmeter.save.saveservice.bytes" value="true"/>
            <property name="file_format.testlog" value="${format}"/>
            <property name="jmeter.save.saveservice.response_data.on_error" value="${funcMode}"/>
            
            <jvmarg value="-Xincgc"/>
            <jvmarg value="-Xmx128m"/>
            <jvmarg value="-Dproperty=value"/>
            <jmeterarg value="-qextra.properties"/>           
        </jmeter>  
    </target>

    <property name="lib.dir" value="${jmeter.home}/lib"/>

    <!-- Use xalan copy from JMeter lib directory to ensure consistent processing with Java 1.4+ -->
    <path id="xslt.classpath">
        <fileset dir="${lib.dir}" includes="xalan*.jar"/>
        <fileset dir="${lib.dir}" includes="serializer*.jar"/>
    </path>


    <target name="xslt-report" depends="_message_xalan">
        <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="showData" expression="${show-data}"/>
            <param name="titleReport" expression="${ReportName}${time}"/>
            <param name="dateReport" expression="${ReportName}${time}"/>            
        </xslt>
        <!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 --> 
        <copy todir="${jmeter.result.html.dir}">
             <fileset dir="${jmeter.home}/extras">
                 <include name="collapse.png" />
                <include name="expand.png" />
             </fileset>
       </copy>
    </target>    

    <target name="verify-images">
        <condition property="samepath">
                <equals arg1="${testpath}" arg2="${basedir}" />
        </condition>
    </target>

    <!-- Check that the xalan libraries are present -->
    <condition property="xalan.present">
          <and>
              <!-- No need to check all jars; just check a few -->
            <available classpathref="xslt.classpath" classname="org.apache.xalan.processor.TransformerFactoryImpl"/>
            <available classpathref="xslt.classpath" classname="org.apache.xml.serializer.ExtendedContentHandler"/>
          </and>
    </condition>

    <target name="_message_xalan" unless="xalan.present">
        <echo>Cannot find all xalan and/or serialiser jars</echo>
        <echo>The XSLT formatting may not work correctly.</echo>
        <echo>Check you have xalan and serializer jars in ${lib.dir}</echo>
    </target>

</project>

切到 build.xml 所在的目录下,使用 ant 编译 build.xml,验证是否可以正常编译(成功结果如下)

技术分享图片

6)部署 jenkins 平台

技术分享图片 

配置 item 信息

技术分享图片

 技术分享图片

 立即构建,运行测试脚本

技术分享图片

运行成功,生成测试报告(report目录没有的话会自动创建)

技术分享图片

 

技术分享图片

jenkins+ant+jmeter环境搭建

原文:https://www.cnblogs.com/yi-ying/p/14087431.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!