Jenkins+ant+jmeter搭建接口自动化测试环境
一、jmeter
1、下载jdk并安装配置
2、下载jmeter,并解包
下载地址:http://jmeter.apache.org/download_jmeter.cgi
二、ant
1、下载解包并配置环境变量
下载地址:http://ant.apache.org/bindownload.cgi
环境变量配置:
ANT_HOME:D:\apache-ant-1.9.4-bin\apache-ant-1.9.4
PATH:;%ANT_HOME%\bin
CLASSPATH:;%ANT_HOME%\lib
验证:在cmd下输入“ant -version”,如下,配置成功

注:
1、将 jmeter的extras目录中ant-jmeter-1.1.1.jar包拷贝至ant安装目录下的lib目录中
2、修改Jmeter的bin目录下jmeter.properties文件的配置:jmeter.save.saveservice.output_format=xml
三、ant的build文件(下附build.xml原码)
注:把相应的目录改为自己本地的目录,为了便于管理最好把build.xml文件,报告生成以及执行脚本进行统一管理
文件架构如下:

build.xml源码:
1 <?xml version="1.0" encoding="UTF-8"?>
2
3 <project name="ant-jmeter-test" default="all" basedir=".">
4
5 <tstamp>
6 <format property="time" pattern="yyyyMMddhhmm" />
7 </tstamp>
8 <!-- jmeter的本地目录-->
9 <property name="jmeter.home" value="D:\apache-jmeter-3.3" />
10 <!-- jmeter生成的jtl格式的结果报告的路径-->
11 <property name="jmeter.result.jtl.dir" value="D:\apache-jmeter-3.3\demo\report\jtl" />
12 <!-- jmeter生成的html格式的结果的报告路径-->
13 <property name="jmeter.result.html.dir" value="D:\apache-jmeter-3.3\demo\report\html" />
14 <!--
15 <path id="xslt.classpath">
16 <fileset dir="${jmeter.home}\lib" includes="xalan.jar"/>
17 <fileset dir="${jmeter.home}\lib" includes="serializer.jar"/>
18 </path>
19 -->
20 <!-- 生成的报告的前缀-->
21 <property name="ReportName" value="TestReport" />
22 <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" />
23 <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}${time}.html" />
24
25 <target name="all">
26 <antcall target="test" />
27 <antcall target="report" />
28 </target>
29
30 <target name="test">
31 <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
32 <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
33 <!--声明要运行的脚本,,".jmx"指包含此目录下所有的jmeter -->
34 <testplans dir="D:\apache-jmeter-3.3\demo" includes="*.jmx" />
35 <property name="jmeter.save.saveservice.output_format" value="xml"/>
36 </jmeter>
37 </target>
38
39 <target name="report">
40 <xslt in="${jmeter.result.jtlName}"
41 out="${jmeter.result.htmlName}"
42 style="${jmeter.home}/extras/xinjian-30.xsl" />
43
44 <!--因为上面生成报告的时候,不会将相关的图片一起拷贝至目标目录,所以需要手动拷贝 -->
45 <copy todir="${jmeter.result.html.dir}">
46 <fileset dir="${jmeter.home}/extras">
47 <include name="collapse.png" />
48 <include name="expand.png" />
49 </fileset>
50 </copy>
51
52 </target>
53 </project>
四、执行ant
1、进入build.xml文件下,执行ant

2、查看相应目录生成的报告

五、安装配置jenkins
下载地址:https://jenkins.io/download/
注:一路向下安装就好了,首次登录名:admin 登录密码:jenkins安装目录下secrets文件夹内的initalAdminPassword内的字符串
1、打开Jenkins

2、新建一个项目
输入名称构建一个自由风格的项目

3、选择构建—增加构建步骤—Invoke Ant

点击高级,在Build File中写下build.xml的路径,然后点击保存

点击“立即构建”,构建完毕之后查看生成的报告
结语:多年以后,蓦然回首,感谢现在的自己!
Jenkins+ant+jmeter搭建接口自动化测试环境的更多相关文章
- jmeter+ant+jenkins搭建接口自动化测试环境
jmeter+ant+jenkins搭建接口自动化测试环境(基于win) 1.jmeter jmeter依赖java运行环境,所以需要提前下载jdk并配置好环境变量 官网下载(http://jmete ...
- jmeter+ant+jenkins搭建接口自动化测试环境(基于win)
1.jmeter jmeter依赖java运行环境,所以需要提前下载jdk并配置好环境变量 官网下载(http://jmeter.apache.org/download_jmeter.cgi),我用的 ...
- Jenkins+Ant+Jmeter搭建持续集成的接口测试平台(转)
一.什么是接口测试? 接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点.测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻 ...
- jmeter+ant+jenkins 搭建接口自动化测试环境
过程参考:http://www.cnblogs.com/lxs1314/p/7487066.html 1. 安装ant 2. 安装jenkins 遇到问题: 启动Tomcat后,访问http://lo ...
- Jenkins+Ant+Jmeter搭建轻量级接口自动化
软件准备 本文所用软件版本如下: Jenkins2.176.1 Tomcat9.0.21 Ant1.9.14 Jmeter5.1.1 我已经把相应的软件上传到我的网盘中,下载地址如下: 下载链接:ht ...
- 【转】Jenkins+Ant+Jmeter搭建持续集成的接口测试平台
一.什么是接口测试? 接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点.测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻 ...
- jenkins+ant+jmeter搭建持续集成的接口测试平台
一.jemter接口脚本的编写步骤如下: 1. 编写接口请求 通过录制或者查看接口文档,编写接口请求,进行调试,确保接口调试通过,对于http的请求来说,就是正确的填写域名,查询字符串,查询参数等信息 ...
- 【接口测试】Jenkins+Ant+Jmeter搭建持续集成的接口测试平台
参考文档: http://www.cnblogs.com/liuqi/p/5224579.html
- Jenkins+Ant+Jmeter自动化测试平台
持续集成 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成.每次集成都通过自动化的构建(包括编译,发布,自动 ...
随机推荐
- 2020.2.21一些python总结
#字符串前面加r可以防止字符串转义 \也可以防止字符串转义#三引号可以实现输入多行文本#range(start,end,step)#列表 append添加一个元素到末尾 extend 添加一个素组到末 ...
- pymysql常见报错
错误一: AttributeError: module 'pymysql' has no attribute 'connect' 有道翻译 AttributeError:模块'pymysql'没有属性 ...
- 洛谷P1002 过河卒(动态规划)
题目描述 棋盘上 AA 点有一个过河卒,需要走到目标 BB 点.卒行走的规则:可以向下.或者向右.同时在棋盘上 CC 点有一个对方的马,该马所在的点和所有跳跃一步可达的点称为对方马的控制点.因此称之为 ...
- 和我一起从0学算法(C语言版)(三)
第二章 暴力求解(枚举法) 第一节 小学奥数题-程序求解 观察下面的加法算式: 祥 瑞 生 辉 + 三 羊 献 瑞 ------------------- 三 羊 生 瑞 气 ...
- idea抛出异常:org.apache.shiro.authc.AuthenticationException
问题描述 继续在ubuntu下折腾,终于将web项目的所有的东西配置好了,然后运行项目,满怀期待的心情登录系统的时候,突然出现了这个bug,吓得我差点从椅子上跳起来,这两天遇到的bug实在是太多了.. ...
- ELK简单配置
input { file { path => ["/usr/local/kencery/tomcat/logs/catalina.out"] type => " ...
- web项目servlet&jsp包失效问题
今天偶然遇到这样的一个问题,故做个总结. javaee开发只用到serlet和jsp两个包.而sun提供的jdk只是javase部分的包,对于se部分只提供了规范,而包由容器给出. 由于自己在新建好一 ...
- linux系统终端介绍
https://zhidao.baidu.com/question/174261014.html
- i++ 和 ++i 的区别和实现
++i 和 i++ ++i 和 i++ 的区别 1)i++ 返回的是 i 的值,++i 返回的是 i+1 的值 2)i++ 不能用作左值,++i 可以用作左值 左值和右值的区别是什么? 根本区别是:能 ...
- PAT Advanced 1050 String Subtraction (20) [Hash散列]
题目 Given two strings S1 and S2, S = S1 – S2 is defined to be the remaining string afer taking all th ...