ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Jmeter+Ant+Jenkins搭建持续集成的接口测试框架

2021-09-07 17:59:03  阅读:181  来源: 互联网

标签:xml ant jmeter 文件 Ant 构建 Jenkins Jmeter localhost


一、Jmeter+ant

1、首先我们默认Jmeter脚本已经录制好了,并测试通过,存在(查询模块.jmx)脚本 

2、将JMeter所在目录下extras子目录里的ant-JMeter-1.1.1.jar复制到Ant所在目录lib子目录之下,这样Ant运行时才能找到"org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"这个类,从而成功触发JMeter脚本      

3、jmeter默认保存的是.csv格式的文件,所以我们先要设置一下bin/jmeter.properties文件内容,保存

    jmeter.save.saveservice.output_format=xml

4、主要逻辑思路:运行D:\jemeterTest\script下面的.jmx脚本,生成.jtl文件放入 

      D:\jemeterTest\resultLog\jtl文件中,ant在将相应的文件转换为对应的html文件放入D:\jemeterTest\resultLog\html中

   build.xml文件中的内容如下: 

<?xml version="1.0" encoding="utf-8"?>
<project name="JmeterTest" default="all" basedir=".">
    <tstamp>
        <format property="time" pattern="yyyyMMddhhmm" />
    </tstamp>
    <!-- 需要改成自己本地的 Jmeter 目录-->
    <property name="jmeter.home" value="D:\soft\apache-jmeter-2.9" />
    <!-- jmeter生成jtl格式的结果报告的路径-->
    <property name="jmeter.result.jtl.dir" value="D:\jemeterTest\resultLog\jtl" />
    <!-- jmeter生成html格式的结果报告的路径-->
    <property name="jmeter.result.html.dir" value="D:\jemeterTest\resultLog\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="LIUCHAO448@pingan.com.cn" />
    <!-- 电脑地址 -->
    <property name="ComputerName" value="jkqsh-l0285" />
    <target name="all">
        <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脚本 -->
            <testplans dir="D:\jemeterTest\script" includes="*.jmx" />
        </jmeter>
    </target>
    <target name="report">
        <xslt in="${jmeter.result.jtlName}" out="${jmeter.result.htmlName}" style="${jmeter.home}/extras/jmeter-results-detail-report_90Line.xsl" />
        <!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
        <copy todir="${jmeter.result.html.dir}">
            <fileset dir="${jmeter.home}/extras">
                <include name="collapse.png" />
                <include name="expand.png" />
            </fileset>
        </copy>
    </target>
    <!-- 发送邮件 -->
</project>

切换到D:\jemeterTest目录下,输入ant查看运行结果

        

 

  运行前

                

        运行后

            

 

浏览器打开HTML文件,显示正确

             

           

二、Jmeter+ant+Jenkins

        1、下载Jenkins安装

        2、命令行切换到jenkins.war的根目录,输入 java -jar jenkins.war

                

 

 3、浏览器输入地址http://localhost:8080/显示界面,安装成功

         

            4、新建一个任务并配置

            

 5、配置参数

                

          旧的构建保存了你在一次构建中的所有临时文件,如果构建没有保留的必要,就勾选丢弃旧的构建,同时设置保持构建天使和保持构建的最大个数两个参数。

          注意:三个设置必须同时设置,否则无效

        6、设置定时运行间隔,这里,设置间隔时间为15分钟运行一次

                    

        7、设置invoke ant,完成后点击保存

                        

  8、点击立即构建,就可以调用ant,执行打包过程。在这里,也就是执行生成测试报告的步骤

         

                

三、Tomcat配置虚拟目录

    在tomcat文件夹的conf/catalina/localhost(对于Tomcat6版本及其以上,需要自己创建catalina和localhost这两个文件夹)下新建一个xml文件。

    内容为:

<?xml version="1.0" encoding="UTF-8"?> 
<Context 
    docBase="换成你的路径" 
    reloadable="true"> 
</Context>

文件名改成你自己的譬如http://localhost:8080/infces ,文件名就为infces.xml

    其他配置:

    打开 Tomcat/conf/web.xml 文件,找到:

    <init-param>

    <param-name>listings</param-name>

    <param-value>false</param-value>

    </init-param>

    把false设成true保存,重启Tomcat,让tomcat支持文件列表显示

    输入地址:http://localhost:8080/infces/

    显示如下:

 

 

 

 

 

标签:xml,ant,jmeter,文件,Ant,构建,Jenkins,Jmeter,localhost
来源: https://blog.csdn.net/weixin_50097774/article/details/120163530

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有