jenkins+ant+jmeter自动执行脚本环境搭建

本文介绍如何使用Ant和Jenkins进行自动化测试配置,包括Ant的安装、Jenkins的端口设置、JMeter与Ant的关联以及通过Jenkins自动化执行测试脚本并生成详细报告的过程。

1、工具下载
(1)ANT:http://ant.apache.org/bindownload.cgi
环境配置:
新建ANT_HOME路径:ANT_HOME:D:\ant\apache-ant-1.10.6
新建CLASSPATH路径:CLASSPATH:;%ANT_HOME%\lib
新建path路径:;%ANT_HOME%\bin
检测ant是否安装成功:cmd,输入ant -version
(2)Jenkins:https://jenkins.io/download/ 默认端口号:8080
当端口号被占用的时候,修改jenkins 端口号,如下:
修改jenkins.xml文件
在这里插入图片描述
完成之后,在浏览器输入:http://localhost:8080/jenkins 完成Jenkins的配置等
(3)jmeter:http://www.downxia.com/downinfo/226434.html,下载安装

如果将ant、Jenkins关联起来?
(1)将\apache-jmeter\extras下面的ant-jmeter-1.1.1的jar包复制到ant的lib目录下
(2)配置\apache-jmeter\extras下面的build.xml文件
在这里插入图片描述
如果要生成详细的报告可以修改以下地方:

<?xml version="1.0" encoding="UTF-8"?>
<project name="ant-jmeter-test" default="run" basedir=".">
      <tstamp>
        <format property="time" pattern="_yyyy_MMdd_HHmmss" />
    </tstamp>
    <!-- 需要改成自己本地的 Jmeter 目录-->  
    <property name="jmeter.home" value="D:\workTools\apache-jmeter-4.0" />
    <property name="report.title" value="接口测试"/>
    <!-- jmeter生成jtl格式的结果报告的路径--> 
    <property name="jmeter.result.jtl.dir" value="D:\workTools\apache-jmeter-4.0\report" />
    <!-- jmeter生成html格式的结果报告的路径-->
    <property name="jmeter.result.html.dir" value="D:\workTools\apache-jmeter-4.0\report" />
    <property name="detail" value="_detail" />
    <!-- 生成的报告的前缀-->  
	
    <property name="ReportName" value="apiTest" />
    <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}.jtl" />
    <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}.html" />
    <!-- 生成详细报告-->  
	<property name="jmeter.result.jtlNameDetail" value="${jmeter.result.jtl.dir}/${ReportName}.jtl" />
    <property name="jmeter.result.htmlNameDetail" value="${jmeter.result.html.dir}/${ReportName}${detail}.html" />

    <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脚本-->
            <testplans dir="D:\workTools\apache-jmeter-4.0\apiTestScript" includes="*.jmx" />

            <property name="jmeter.save.saveservice.output_format" value="xml"/>
        </jmeter>
    </target>

    <path id="xslt.classpath">
        <fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
        <fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
    </path>


    <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="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl">
              <param name="showData" expression="${show-data}"/>
              <param name="titleReport" expression="${report.title}"/>
              <param name="dateReport" expression="${report.datestamp}"/> 
       </xslt>
	   <xslt 
              classpathref="xslt.classpath"
              force="true"
              in="${jmeter.result.jtlNameDetail}"
              out="${jmeter.result.htmlNameDetail}"
              style="${jmeter.home}/extras/jmeter-results-shanhe-me.xsl">
              <param name="showData" expression="${show-data}"/>
              <param name="titleReport" expression="${detailReport.title}"/>
              <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>

(3)复制build.xml文件到ant的bin目录下,名字修改为build_jemter.xml在这里插入代码片
(4)将脚本放在自己配置的地方,我在jmeter 安装目录下新建了一个apiTestScript目录,例如:

在这里插入图片描述

如果配置jenkins?
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
生成的报告如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

如果配置邮箱?
1、安装插件(email extension plugin)
2、预先配置全局变量
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

默认邮件内容:

${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志 本邮件由系统自动发出,无需回复!
各位同事,大家好,以下为${PROJECT_NAME }项目构建信息
构建结果 - ${BUILD_STATUS}

构建信息
失败用例

$FAILED_TESTS
最近提交(#$SVN_REVISION)

  • ${CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="%c", changesFormat="
  • %d [%a] %m
  • "}
详细提交: ${PROJECT_URL}changes
        </td>    
    </tr>    
</table>    

在这里插入图片描述

3、每个项目内的配置:针对于每个项目需要不同的收件人
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值