jmeter+ant+jenkins 搭建持续集成接口测试

一、解释

    ant 是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。在实际软件开发中,有很多地方可以用到ant。

   jmeter、jenkins 大家都清楚,不做解释(哈哈 实际我也解释不了太深  ,也就是使用)

二、背景

    主要是实现jmeter +ant +jenkins  的自动构建及测试报告的查看及邮件通知构建、测试结果。

三、实际操作

    1.我自己是在windons 下操作的

   jdk、ant、jmeter、jenkins

     2.ant+jmeter  实现

      先创建好接口测试脚本,以及存放目录等

    注意build.xml的文件配置(D:\tool\jmeter\apache-jmeter-5.4.3\extras),文件路径不要配置错误,导致构建失败等我自己的build.xml

<?xml version="1.0" encoding="utf-8"?>

<project name="ant-jmeter-test" default="run" basedir="." >
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>

<target name="run">
<antcall target="clear1" />
<antcall target="test1" />
<antcall target="report1" />
<antcall target="sendmail1" />
</target>

<target name="test1">
<echo message="开始执行jmeter脚本..."></echo>
<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
<!--Jmeter家目录和放置jtl文件路径-->
<jmeter jmeterhome="D:\tool\jmeter\apache-jmeter-5.4.3" resultlog="D:\tool\jmeter\apache-jmeter-5.4.3\API_TEST\result\test2022.jtl">
<!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本-->
<testplans dir="D:\tool\jmeter\apache-jmeter-5.4.3\API_TEST\script" includes="*.jmx" />
<property name="jmeter.save.saveservice.output_format" value="xml"/>
</jmeter>
</target>

<path id="xslt.classpath">
<!--jmeter中lib路径-->
<fileset dir="D:\tool\jmeter\apache-jmeter-5.4.3\lib" includes="xalan*.jar"/>
<fileset dir="D:\tool\jmeter\apache-jmeter-5.4.3\lib" includes="serializer*.jar"/>
</path>

<target name="report1">
<echo message="开始转换执行结果..."></echo>
<tstamp> <format property="time" pattern="yyyy/MM/dd HH:mm" /></tstamp>
<!--in代表转换前,out代表转换后,style指明转换模板-->
<xslt classpathref="xslt.classpath"
force="true"
in="D:\tool\jmeter\apache-jmeter-5.4.3\API_TEST\result\test2022.jtl"
out="D:\tool\jmeter\apache-jmeter-5.4.3\API_TEST\html\test2022.html"
style="D:\tool\jmeter\apache-jmeter-5.4.3\extras\jmeter.results.shanhe.me.xsl">
<param name="titleReport" expression="测试报告"/>
<param name="dateReport" expression="${time}"/>
</xslt>
<!-- jmeter-results-detail-report_21 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝-->
<copy todir="D:\tool\jmeter\apache-jmeter-5.4.3\API_TEST\html">
<fileset dir="D:\tool\jmeter\apache-jmeter-5.4.3\extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>

<target name="clear1">
<!-- 每次执行前先删除清空jtl和html文件夹,释放空间 -->
<echo message="释放空间,清空jtl和html文件夹中 ..."></echo>
<delete dir="D:\tool\jmeter\apache-jmeter-5.4.3\API_TEST\result" />
<delete dir="D:\tool\jmeter\apache-jmeter-5.4.3\API_TEST\html" />
<!-- 删除单个文件-->
<delete file="D:\gqapp\apache-jmeter\gqcesspace\1.rar" />
<sleep seconds="2"/>
<echo message="释放完成 ..."></echo>
</target>

<target name="sendmail1">
<!--把报告进行压缩打包-->
<jar jarfile="D:\tool\jmeter\apache-jmeter-5.4.3\API_TEST\1.rar" basedir="D:\tool\jmeter\apache-jmeter-5.4.3\API_TEST\html"/>
<!--把文件贴到邮件正文-->
<loadfile property="html" srcFile="D:\tool\jmeter\apache-jmeter-5.4.3\API_TEST\html\test2022.html" encoding="UTF-8">
<filterchain>
<expandproperties />
</filterchain>
</loadfile>

<mail mailhost="smtp.qq.com"
mailport="25" subject="测试结果"
messagemimetype="text/html" tolist="602208564@qq.com"
user="602208564@qq.com" password="qarsfhcnmmmtbcfb">
<from address="602208564@qq.com"/>
<!--发送附件-->
<fileset dir="D:\tool\jmeter\apache-jmeter-5.4.3\API_TEST\html">
<include name="1.rar"/>
</fileset>
<message>testing</message>
</mail>
</target>


</project>

 

3.build.xml配置好后,在dos窗口进入build.xml文件所在的路径下,输入ant

查看构建是否成功,对于测试报告路径下是否有测试报告生成,及邮件等

 

4.jenkins上新建项目,主要配置好ant、jdk等信息

注意:如果配置邮件通知、端口问题我自己配的是163邮箱

jmeter+ant+jenkins 搭建持续集成接口测试

 

 

也可以配置触发器等配置好后,直接构建,查看构建结果、邮件通知等信息

 

邮件模板可以自己配置

jmeter+ant+jenkins 搭建持续集成接口测试

 

上一篇:ant-design-vue对起始时间的校验


下一篇:oracle加锁方式,oracle中加锁与解锁