Jenkins +Ant +Jmeter(apache-jmeter-5.1.1)自动化性能测试平台
1.安装配置好Jdk,
下载网址:https://www.cr173.com/soft/33894.html
2.Jmeter下载地址:http://jmeter.apache.org/download_jmeter.cgi
Binaries 下的文件
下载后,解压文件到任意目录,避免在有空格的路径安装Jmeter,
这将导致远程测试出现问题。
3.Ant安装配置:
下载安装
下载地址:http://ant.apache.org/bindownload.cgi 下载 zip包,解压放在任意盘符,随后进行环境变量配置(windows为例)
ANT_HOME c:/apache-ant-1.9.0
path c:/apache-ant-1.9.0/bin
classpath c:/apache-ant-1.9.0/lib 在DOS界面输入如下命令:{Ant 安装位置}\bin ant -version
如果出现版本信息,则说明安装成功,但如果出现'ant'不是内部或外部命令,也不是可运行的程序或
批处理文件,说明安装失败。 ant配置教程:https://www.cnblogs.com/xbxxf/p/9719301.html
4.Jenkins安装配置:
Jenkins下载:https://jenkins.io/zh/download/
jenkins安装使用教程:https://www.cnblogs.com/lsdb/p/10112844.html
Jenkins安装修改默认路径和端口的方法:https://www.cnblogs.com/Jourly/p/7462816.html
jenkins 的默认用户名和密码,及启动方法:https://blog.csdn.net/neymar_jr/article/details/78970535
5.Jenkins+Ant+Jmeter自动化测试平台搭建
操作步骤:
步骤1.录制jmeter脚本
步骤2.将Jmeter的安装目录下的extras目录中"ant-jmeter-1.1.1.jar"这个jar包放到ant的{安装目录}\lib
目录下(此处很关键!)
步骤3.配置Jmeter的build.xml配置文件
Jmeter Ant xml配置文件
1.Ant关键元素
Ant的构建文件是基于XML编写的,默认名称为build.xml
project 元素是Ant构建文件的根元素,Ant构建文件至少应该包含一个project元素,否则会
发生错误。在每个project元素下,可包含多个target元素。接下来熟悉project元素的各属性。
1.name属性
用于指定project元素的名称。
2.default属性
用于指定project默认执行时所执行的target的名称。
3.basedir属性
用于指定jmeter基路径的位置,该属性没有指定时,使用Ant的构建文件的附目录作为基准目录。
2.target元素
它为Ant的基本执行单元,它可以包含一个或多个具体的任务。多个target可以存在相互依赖关系。
它有如下属性:
1.name属性
指定target元素的名称,这个属性在一个project元素中时唯一的。我们可以通过指定target元
素的名称来指定某个target。
2.depends属性
用于描述target之间的依赖关系,若与多个target存在依赖关系时,需要以“,”间隔。Ant会依
照depends属性中target出现的顺序依次执行每个target.被依赖的target会先执行。
3.if属性
用于验证指定的属性是否存在,若不存在,所在target将不会被执行。
4.unless属性
该属性的功能与if属性的功能正好相反,它也用于验证指定的属性是否存在,若不存在,所在
target将会被执行。
5.description属性
该属性是关于target功能的简短描述和说明。
3.property元素
该元素可看作参量或者参数的定义,project的属性可以通过property元素来设定,也可以在Ant之外
设定。若要在外部引入某文件,例如build.properties文件,可以通过如下内容将其引入:
<property file="build.properties"/>
4.自定义要运行的jmeter脚本的buil的xml文件build_jmeter.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="D:\jmeter\apache-jmeter-5.1.1" />
<!-- jmeter生成的jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="D:\jmeter\apache-jmeter-5.1.1\loadtests\jtl\${time}" />
<!-- jmeter生成的html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="D:\jmeter\apache-jmeter-5.1.1\loadtests\html\${time}" />
<!-- ʺ生成的报告的前缀-->
<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" /> <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:\jmeter\apache-jmeter-5.1.1\loadtests" 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="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>
步骤4.使用Ant编译验证Jmeter的build_jmeter.xml文件(注意将配置好的build.xml文件放在ant目录的bin目录下)
1.将build_jmeter.xml文件放在自定义目录(自定义目录例如:D:\jmeter\apache-jmeter-5.1.1\loadtests)下;
2.cmd切换到自定义目录下,ant编译命令:ant -buildfile build_jmeter.xml
步骤5.部署到持续集成平台jenkins
创建一个自由风格的项目
项目配置:
项目配置中
增加构建步骤选择:Execute Windows batch command
命令:ant -buildfile D:\jmeter\apache-jmeter-5.1.1\loadtests\build_jmeter.xml
点击立即构建执行 jmeter执行的结果类型就是jtl的类型 jmeter5.1.1编译成功教程:https://www.cnblogs.com/Bella-gan123/p/11110733.html
Jenkins +Ant +Jmeter(apache-jmeter-5.1.1)自动化性能测试平台的更多相关文章
- jenkins+ant+jmeter自动化性能测试平台
jenkins+ant+jmeter自动化性能测试平台 Jmeter是性能测试的工具,java编写.开源,小巧方便,可以图形界面运行也可以在命令行下运行.网上已经有人使用ant来运行,http://w ...
- 【转】Jenkins+Ant+Jmeter自动化性能测试平台
Jmeter是性能测试的工具,java编写.开源,小巧方便,可以图形界面运行也可以在命令行下运行.网上已经有人使用ant来运行,,既然可以使用ant运行,那和hudson.jenkins集成就很方便了 ...
- Jmeter+maven+Jenkins构建云性能测试平台(mark 推荐)
转自:http://www.cnblogs.com/victorcai0922/archive/2012/06/20/2555502.html Jmeter+maven+Jenkins构建云性能测试平 ...
- Apache JMeter系列.1
最爱看统计 --01-- 简介 Apache JMeter Apache JMeter可用于测试静态和动态资源(文件,Servlet,Perl脚本,Java对象,数据库和查询,FTP服务器等)的性能. ...
- 一、什么是Jmeter?Jmeter安装?Jmeter的启动?
什么是Jmeter Apache JMeter 是 Apache 组织开发的基于 Java 的压力测试工具,也可以进行接口测试.它是一个开源的,100%基于Java的应用程序,带有图形界面.它旨在分析 ...
- jenkins / ant / jmeter 持续集成接口自动化
1. 将 jmeter 脚本放在/var/lib/jenkins/workspace/Jmeter_auto/jmxpath路径下 2. 点击http://jk.facebank.net.cn/job ...
- 搭建持续集成接口测试平台(Jenkins+Ant+Jmeter)
一.环境准备: 1.JDK:http://www.oracle.com/technetwork/java/javase/downloads/index.html 2.Jmeter:http://jme ...
- 【jmeter】搭建持续集成接口测试平台(Jenkins+Ant+Jmeter)
一.环境准备: 1.JDK:http://www.oracle.com/technetwork/java/javase/downloads/index.html 2.Jmeter:http://jme ...
- jenkins+ant+jmeter html报告文件作为附件发送(ant-jmeter支持javamail)
前言:由于ant-jmeter目前的版本不支持javamail,也就是说发送邮件时只能借助jenkins自带的发送邮件插件来发送报告. 但是jenkins发送邮件支持发送邮件内容(且有价值.有营养的内 ...
随机推荐
- VSTO开发指南(VB2013版) 第三章 Excel编程
通过前两章的内容,有了一定的基础,但进入第三章,实例的步骤非常多,并且随着VS版本的升级,部分功能菜单界面发生了很大变化,所以,第三章的案例我将逐步编写! 实例3.1的目标就是给Excel写一个加载宏 ...
- go实现java虚拟机02
上一篇通过flag包实现了命令行参数的解析,其实就是将输入的参数保存到一个结构体中,上一篇说过的例如java -classpath hello.jar HelloWorld这种命令,那么HelloWo ...
- docker jenkins 安装
1:官方教程 https://jenkins.io/zh/doc/book/installing/ 2:拉取jenkins镜像 docker pull jenkinsci/blueocean 3:输入 ...
- 区间操作---树状数组&&线段树
涉及区间操作的一些套路必须要会呀 区间加减为了偷懒能不写线段树so我选择树状数组!! 但是区间乘除,最大值我想了想还是用线段树分块吧. 树状数组: 这里用网上的一张图: 这里灰色数组是原本的数组(a[ ...
- JS事件流、DOM事件流、IE事件处理、跨浏览器事件处理、事件对象与类型
事件的移除 removeEventListener() 第二个参数需要指定要移除的事件句柄,不能是匿名函数,因为无法识别 想要移除成功,那么三个参数必须跟addEventListener中的三个完全一 ...
- MongoDB高可用架构集群管理(一)
MongoDB数据库核心的两个特点:第一个特点是副本集的自动切换,保证数据的高可靠.服务的高可用:第二个特点是自动分片.服务的横向扩展能力. (一)副本集架构 MongoDB的副本集是一组保持相同数据 ...
- 消息总线:Spring Cloud Stream
最近在学习Spring Cloud的知识,现将消息总线:Spring Cloud Stream 的相关知识笔记整理如下.[采用 oneNote格式排版]
- webApi前端ajax调用后端返回{"readyState":0,"status":0,"statusText":"error"}解决方案
var url = data.url, params = data.params, try_times = data.try_times , async = data.sync == 'false' ...
- redis缓存优化
redis缓存优化 一.问题 在Javaweb项目中,如果每次刷新,所有资源都重新从数据库中读取,这样每次效率会很低,在这里可以使用redis非关系型数据库,将一些不经常变化得资源加载进内存中.提高效 ...
- Mysql基础04-查询
关联查询 1.内连接:实现A∩B select 字段列表 from A表 inner join B表 on 关联条件 where 等其他子句; 2.左外连接 #实现查询结果是A select 字段列表 ...