Jmeter+ant+jenkins 实现接口自动化构建
目录
引言
一、安装并配置环境
1.下载安装jdk1.8并且配置环境变量
2.下载ant包
二、安装验证
1.拷贝jar包
2.修改jmeter报告输出格式
3.创建demo文件夹
4.建立build.xml文件
5.放入脚本文件
6.运行
三、集成jenkins
1.Tomcat的安装及配置
2.jenkins下载及安装配置
3.jenkins重启及关闭
引言
jenkins工具平台是一个开源软件项目,可实现全自动部署+测试,且非常易于安装和配置,简单易用。
持续集成的优点:
1.持续集成中的任何一个环节都是自动完成的,无需太多的人工干预,有利于减少重复过程以节省时间、费用和工作量
2.持续集成保障了每个时间点上团队成员提交的代码是能成功集成的。换言之,任何时间点都能第一时间发现软件的集成问题,使任意时间发布可部署的软件成为了可能
3.持续集成还能利于软件本身的发展趋势,这点在需求不明确或是频繁性变更的情景中尤其重要,持续集成的质量能帮助团队进行有效决策,同时建立团队对开发产品的信心
一、安装并配置环境
1.下载安装jdk1.8并且配置环境变量
自行配置,此处不再赘述
2.下载ant包
解压并且配置环境变量,官网地址:http://ant.apache.org/bindownload.cgi
window中设置ant环境变量:
设置ant环境变量(此处为我的安装路径)
ANT_HOME=E:\software\apache-ant\apache-ant-1.10.12
CLASSPATH=E:\software\apache-ant\apache-ant-1.10.12
Path=E:\software\apache-ant\apache-ant-1.10.12\bin
【也可以Path=%ANT_HOME%\bin】
二、安装验证
1.拷贝jar包
配置好环境之后,需将 jmeter的extras目录中ant-jmeter-1.1.1.jar包拷贝至ant安装目录下的lib目录中,该包相当于是ant和jmeter连接的桥梁,作用是使Ant运行时能够找到"org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"这个类,从而成功触发JMeter脚本
2.修改jmeter报告输出格式
修改Jmeter的bin目录下jmeter.properties文件的配置:jmeter.save.saveservice.output_format=xml
作用是使Jmeter报告输出文件格式为xml
3.创建demo文件夹
在jmeter安装目录下新建文件夹demo,在demo下新建文件夹report,report下再新建jtl和html文件夹,html和jtl文件夹的作用:
html文件夹:用于保存html的结果报告
jtl文件夹:用于保存jmeter的测试脚本
(一开始jtl和html文件夹下都是空的,执行了ant命令之后jtl会生成截图)
在CMD下输入ant -version后,会输出 ant版本号,说明配置成功,下一步配置build.xml文件
4.建立build.xml文件
新建文件,名称为:build.xml,然后添加下方模板,修改实际路径
build.xml:Ant根据该文件运行jmeter脚本(关键文档,需要配置正确)
它的作用就是把生成的.jtl数据文件转换为.html格式的报告(放在demo文件夹下)
具体属性的含义:
in:生成的.jtl文件的路径
out:生成的.html文件的路径
style:从.jtl转换成.html所使用的样式,这些文件也在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>
<!-- 需要改成自己本地的Jmeter目录-->
<property name="jmeter.home" value="E:\software\jmeter\apache-jmeter-5.4.1" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="E:\software\jmeter\apache-jmeter-5.4.1\demo\report\jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="E:\software\jmeter\apache-jmeter-5.4.1\demo\report\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" />
<!-- 输出生成的报告名称和存放路径-->
<echo message="${jmeter.result.jtlName}"/>
<echo message="${jmeter.result.htmlName}"/>
<echo message="${jmeter.result.html.dir}"/>
<target name="run">
<antcall target="test"/>
<antcall target="report"/>
</target>
<!-- 指定ant-jmeter-1.1.1.jar 的位置 -->
<path id="jmeter.classpath">
<fileset dir="${jmeter.home}/extras">
<include name="ant-jmeter-1.1.1.jar"/>
</fileset>
</path>
<!--加载jar包,解决显示时间问题-->
<path id="xslt.classpath">
<fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
<fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
</path>
<target name="test">
<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
<jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
<!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本,比如test*。jmx表示以test开头的所有.jmx文件-->
<testplans dir="E:\software\jmeter\apache-jmeter-5.4.1\demo" includes="*.jmx" />
<!-- 声明ant执行jmeter时,传入jmeter的属性值,可以自定义必须是xml格式 -->
<property name="jmeter.save.saveservice.output_format" value="xml"/>
</jmeter>
</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="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl">
<!--jmeter-results-detail-report_21.xsl这里的文件名可以换成你想要的报告效果-->
<!--显示dateReport的时间-->
<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>
根据个人环境的不同,上述需要修改的模版参数为(按照图片中修改实际路径):
build.xml文件的配置比较重要,网上有些是有的build.xml模板缺漏,导致运行时,一直build failed。因此需检查是否有以下该段代码
<!-- 指定ant-jmeter-1.1.1.jar 的位置 -->
<path id="jmeter.classpath">
<fileset dir="${jmeter.home}/extras">
<include name="ant-jmeter-1.1.1.jar"/>
</fileset>
</path>
5.放入脚本文件
准备要要运行的项目,把写好的jmeter脚本放在demo目录下
6.运行
cmd,先切换到demo目录下,然后运行ant或者ant run
执行成功后查看 E:\application\apache-jmeter-5.4\demo\report 下的html和jtl文件建是否有报告生成
三、集成jenkins
1.Tomcat的安装及配置
A)tomcat下载
1)进入tomcat的官网Index of /apache/tomcat (tsinghua.edu.cn)下载,选择需要的版本
2)点击版本,进入下一层级目录
3)选择bin目录文件
4)根据操作系统,选择对应的版本
B)Tomcat的安装
1)将下载的压缩包解压到指定位置
2)配置环境变量
新建系统变量,变量名:CATALINA_HOME变量值:E:\software\apache-tomcat\apache-tomcat-8.5.78(变量值为tomcat安装路径)
配置path变量,新建,输入:%CATALINA_HOME%\bin
3)启动tomcat
a.打开cmd,以管理员身份运行
b.输入startup回车
c.打开浏览器,输入:http://localhost:8080/
(出现以下页面,证明安装配置成功。)
2.jenkins下载及安装配置
A)下载jenkins.war
下载网址:Index of /war-stable (jenkins.io)
选择需要的版本进行下载
B)文件移动
下载后的文件,放至tomcat下面的webapps下面
C)启动startup.bat
双击E:\software\apache-tomcat\apache-tomcat-8.5.78\bin下面的startup.bat 启动
D)查看运行结果
显示Jenkins is fully up and running 证明jenkins已经启动了
E)打开一个浏览器
输入:http://localhost:8080/jenkins/(默认端口号为8080),按照提示安装插件,创建管理员用户(admin admin),配置完成后进入页面
F)创建一个项目
输入名称,选择freestyle project,点击【确定】按钮
G)配置General菜单下参数
H)配置ant,增加build路径
构建参数如下:
点击保存之后,继续配置测试报告
I)下载插件htmlpublisher
直接搜索插件下载会有失败,也可以选择Jenkins插件资源库链接:Index of /download/plugins
选择相关版本下载:
选择高级,通过上传插件进行安装
接下来继续配置报告
点击增加构建后操作步骤 并点击Public HTML reports,点击【保存】按钮,此时报告已配置好
点击Build Now之后,出现构建中样式,证明jenkins正在构建
此时,已经构建成功了,显示BUILD SUCCESSFUL
查看报告,选择HTML Report
点击生成的报告
报告显示如下:
3.jenkins重启及关闭
A)重启Jenkins
在Jenkins的链接上输入 restart 即输入 http://localhost:8080/jenkins/restart 然后点击【是】即可重启
B)重新加载配置信息
jenkins启动后,在网址栏输入http://localhost:8080/jenkins/reload,点击【确认】后,即可完成重新加载jenkins配置信息
C)关闭Jenkins
在网址栏输入 http://localhost:8080/jenkins/exit,点击【确认】后,即可关闭Jenkins
Jmeter+ant+jenkins 实现接口自动化构建相关推荐
- 关于Jmeter+Ant+Jenkins作为接口、性能自动化框架的误区
说明:Apach-Jmeter有完善的桌面客户端,关联数据的处方方式,各种参数化的方式,各种Jar包的扩展,也可以用作抓包工具使用,当然最重要的是它是[开源!开源!开源!],重要的事说三遍,目前也有基 ...
- 持续集成:jmeter+ant+jenkins搭建接口自动化测试环境
1.介绍 Jmeter是一个Java开发的,apache下的开源工具,常被用于做接口自动化和性能测试工具.因为他开源,入手也非常简单,所以越来越受测试人员青睐. ant也是用Java开发的,apach ...
- 全网最新最全的jmeter+ant+jenkins 搭建接口自动化测试
目录 一.jmeter 二.ant 三.将\apache-jmeter-3.2\extras下面的ant-jmeter-1.1.1的jar包到ant的lib目录,如图所示: 四.建立build.xml ...
- 【简书 DC谢老师】JMeter + jenkins + SVN 接口自动化之简单 demo
JMeter工具基础知识篇-工程目录结构及命名规范 如果没有目录结构及命名规范,你压根没法实现自动化的持续集成工作,你将被局限在工具级别的自动化上面,离测试框架或测试平台平台之路遥遥无期. 如果你想成 ...
- Jmeter+ant+Jenkins构建接口自动化测试时构建失败 提示:Fatal Error! 字符引用 #原因...
Jmeter+ant+Jenkins构建接口自动化测试时构建失败 提示:Fatal Error! 字符引用 "&#原因:接口响应数据中有&# 转载于:https://www. ...
- 【全栈接口测试进阶系列教程】入门到入职的jmeter接口测试工具实战,接口测试步骤,正则表达式jsonpath,断言,接口加密,beanshell,jdbc,jmeter+ant+jenkins
目录 [本文简介看之前请详细的看完介绍] 本文是全网首发的[全栈接口测试进阶系列教程]jmeter接口测试工具从入门到入职, 接口系列包含 接口测试系列包含所有的接口测试工具入门到入职,如果你喜欢的话 ...
- Jmeter+Ant+Jenkins自动化接口测试框架
1.安装JDK 1.1 下载安装包 我下载的是最新版jdk 1.8.0_152,官网下载地址是: http://www.oracle.com/technetwork/java/javase/do ...
- 【Jmeter篇】jmeter Ant Jenkins接口自动化测试集成之半路逆转(二)
一.更改方案 由于上一篇文章[Jmeter篇]jmeter+Ant+Jenkins实现自动化测试集成(一)https://blog.csdn.net/qq_36502272/article/detai ...
- Jenkins环境搭建(2)-搭建jmeter+ant+jenkins自动化测试环境
一直想在持续集成方向学习并研究一番,近期正准备结合jmeter+ant+jenkins做自动化接口测试,在学习的同时,正好实践一番,毕竟实践才是真理. 在搭建jmeter+ant+jenkins环境有 ...
最新文章
- FastStone Capture不止于完美截图体验
- java el ognl_el表达式跟ognl表达式的区别
- Cordova 本地项目创建方法
- Ellex激光器参数与激光消融手术风险的关系
- Python中的字符串(搜索和替换、对齐、统计、分离和连接)
- 编译自定义的主题theme
- 【linux】【git】git报错fatal: HTTP request failed
- 计算机模拟 matlab,MATLAB计算机模拟实例课件.ppt
- QT之QTreeView使用总结
- numpy数组切片操作之[:,2]、[-1:,0:2]、[1:,-1:]等都是啥?
- Python微博项目
- 如何保护眼睛,可采用语音方式获取外界知识,并积极锻炼身体做到劳逸结合。
- ps怎么保存一小块的图片_ps中怎么保存图片
- sae wpa3加密方式_WPA3:四大安全新特性技术分析
- 程序员的10000个小时理论
- 深度学习实战(七)——目标检测API训练自己的数据集(R-FCN数据集制作+训练+测试)
- 牛客练习赛52.Galahad(树状数组维护区间不相同数的和)
- 干了12年硬件,转芯片原厂FAE,一如既往的打杂背锅
- Servlet 发送电子邮件
- 按键精灵脚本转换成c语言,问一个关于按键码转换的问题
热门文章
- android.bp编译生成so,Android导入第三方静态库.a编译成动态库.so
- Python之小数点位数的控制输出
- UnityHLSLShader 函数笔记
- SAP FICO模块-固定资产月结的注意点
- #ex8 C语言标准实验报告
- fedora 关闭 zram swap
- matlab和eigen在旋转向量,欧拉角,四元数,旋转矩阵转换的对比(一 旋转矩阵转其他)
- java迷宫生成代码_maxe.java 源代码在线查看 - Java Maze 计算机自动生成迷宫 资源下载 虫虫电子下载站...
- 公司测试部门来了个00后卷王之王,老油条感叹真干不过,但是...
- v3 微信api 请求微信_V3版JSAPI微信开发