Jmeter+Ant+Jenkins实现接口自动化(转载)
转载自 http://www.cnblogs.com/chengtch/p/6145867.html
本文转载于上面的网址,稍作修改,实用性更强。
Jmeter是压力测试、接口测试工具,Ant是基于Java的构建工具,具有跨平台的作用,jenkins是持续集成工具。将这三者结合起来可以搭建一套webservice接口测试的持续构建环境。
1、安装JDK,配置java环境变量(略过)
2、安装Jmeter,这里用到的版本是3.2(安装过程略过)
3、安装 ANT
3.1 下载安装
下载地址 http://ant.apache.org/bindownload.cgi,下载后解压到指定位置即可,
比如:F:\apache-ant-1.10.1-bin\apache-ant-1.10.1
3.2 配置环境变量
Windows中设置ant环境变量:
ANT_HOME F:\apache-ant-1.10.1-bin\apache-ant-1.10.1
path F:\apache-ant-1.10.1-bin\apache-ant-1.10.1\bin
classpath F:\apache-ant-1.10.1-bin\apache-ant-1.10.1\lib
3.3 安装验证
验证安装结果,命令行输入ant -v ,出现版本信息则安装成功
4、ANT中配置Jmeter
4.1、配置库文件
将jmeter extras目录下的ant-jmeter-1.1.1.jar 文件拷贝到ant安装目录下的lib文件夹中
copy from:
paste to:
4.2 配置ANT与Jmeter的配置文件
4.2.1 配置ant 编译文件 build.xml,build.xml配置文件与测试脚本同目录
拷贝下面的内容与新建的txt文件中,并将此文件改名为:build.xml,按实际情况修改build.xml文件
<?xml version="1.0" encoding="UTF8"?>
<project name="ant-jmeter-test" default="run" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm"/>
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="F:\Jmeter\apache-jmeter-3.2" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="F:\report\jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="F:\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" />
<!-- 接收测试报告的邮箱 -->
<property name="mail_to" value="1076375446@qq.com" />
<property name="lib.dir" value="${jmeter.home}/lib"/>
<path id="xslt.classpath">
<fileset dir="${lib.dir}" includes="xalan*.jar"/>
<fileset dir="${lib.dir}" includes="serializer*.jar"/>
</path>
<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脚本,若想执行某一个脚本时,将includes="*.jmx"中的"*"修改为具体脚本名称即可-->
<testplans dir="F:\Jmeter\apache-jmeter-3.2\bin\app" includes="*.jmx" />
<property name="jmeter.save.saveservice.output_format" value="xml"/>
</jmeter>
</target>
<target name="report">
<xslt
classpathref="xslt.classpath"
force="true"
in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}"
style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl">
</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中结果报告的路径创建文件
4.2.2 配置jmeter.properties
配置jmeter报告输出格式为xml在jmeter根目录下jmeter.properties文件中修改jmeter.save.saveservice.output_format=csv 为
jmeter.save.saveservice.output_format=xml,并去掉前面的注释符号#
(修改原因:jmeter执行结果文件默认保存的不是xml格式,无法转化成html格式)
4.3 验证配置,执行构建测试
4.3.1 准备测试脚本数据
build配置文件放在与测试脚本同目录
4.3.2 执行测试
命令行cd到build.xml文件所在目录,输入ant run ,执行测试(路径最好不要用中文)
看到build successful 则说明构建测试成功
4.3.3 报告输出路径下查看测试结果报告
按build.xml文件中设置的测试报告地址找到html版测试报告
打开看看:测试结果展现了用例数、成功率、用例执行时间等结果参数
5、配置jenkins
5.1 、jenkins.war的下载与安装,下载后放到d盘根目录
5.2 、配置环境变量,设置JENKINS_HOME
5.3 、解压并启动jenkins
命令行输入java -jar jenkins.war,浏览器中输入url:jenkins所在主机IP 端口:8080 ,打开jenkins,
配置用户名、密码及插件,这里需要配置invoke ant插件、HTML测试报告展示的插件
5.4、新建并配置一个JOB
设置项目名称:
配置构建:
配置构建:
有两种方式可以调用:
1.直接在增加构建步骤中选择“Invoke Ant”,在新加的选择框中Build File后面填写html报告的存放目录,
如:F:\report 点击save后构建即可
2.直接在增加构建步骤中选择“Execute Windows batch command”填写command命令即可。
以上两种方法中,第一种方法需要jenkins上先安装ant,进入系统管理-Global Tool Configuration,选择安装ant.否则会提示ant.bat找不到
配置测试报告插件,用于打开测试结果报告
Publish HTML reports需要提前安装这个插件:
(在https://wiki.jenkins.io/display/JENKINS/HTML+Publisher+Plugin路径下下载 htmlpublisher.hpi文件,然后在http://localhost:8080/pluginManager/advanced 此路径下上传此插 件点击上传按钮即可)
( HTML directory to archive 中填写html报告的存放目录,Index page[s]填写该报告的名称,比如我的这份报告名字叫做index.html,那我在这里就填写上index.html,否则会提示找不到。最后的Report title,随意填写即可。)
基本配置完成
5.5、JOB主页,点击立即构建,执行测试,构建完成即可通过HTML_Report来查看测试结果
继续构建基本完成,另外还 可以配置邮件插件来发送测试报告,设置构建时间来定时自动执行测试
Jmeter+Ant+Jenkins实现接口自动化(转载)的更多相关文章
- Jmeter+ant+Jenkins实现接口自动化平台及报告发送
项目中实现了比较方便的自动化体系,一直没时间总结一下,现抽空整理一番,废话不多说 内容如下: 一.环境准备 jmeter : 编写接口脚本,实现接口测试 ant :静默执行jmeter脚本,并生 ...
- 关于Jmeter+Ant+Jenkins作为接口、性能自动化框架的误区
说明:Apach-Jmeter有完善的桌面客户端,关联数据的处方方式,各种参数化的方式,各种Jar包的扩展,也可以用作抓包工具使用,当然最重要的是它是[开源!开源!开源!],重要的事说三遍,目前也有基 ...
- Jmeter+Ant+Jenkins构建接口自动化测试平台(Windows)
一.首先先介绍下我的环境: 1. win10系统 2. ant版本:apache-ant-1.10.1(作用:执行脚本,便于后期的持续集成,下载地址:http://ant.apache.org/bin ...
- 七、Jmeter + ant + jenkins轻量级接口自动化测试
七.Jmeter + ant + jenkins轻量级接口自动化测试 杀猪不用牛刀,工具没有牛逼高大尚之分,每个工具都有存在的理由:关键是看会不会用,怎么用,有没有用在合适的地方. 需要安装的工具: ...
- jmeter+ant+jenkins搭建接口自动化测试环境
jmeter+ant+jenkins搭建接口自动化测试环境(基于win) 1.jmeter jmeter依赖java运行环境,所以需要提前下载jdk并配置好环境变量 官网下载(http://jmete ...
- Jmeter+ant+Jenkins构建接口自动化测试时构建失败 提示:Fatal Error! 字符引用 "&#原因
Jmeter+ant+Jenkins构建接口自动化测试时构建失败 提示:Fatal Error! 字符引用 "&#原因:接口响应数据中有&#
- 使用jmeter+ant+jenkins实现接口自动化测试
摘自:https://blog.51cto.com/6183574/2318519 本次使用linux环境搭建自动化框架 一.配置ANT 首先下载Ant压缩包,下载地址:http://ant.apac ...
- jmeter+ant+jenkins搭建接口自动化测试环境(基于win)
1.jmeter jmeter依赖java运行环境,所以需要提前下载jdk并配置好环境变量 官网下载(http://jmeter.apache.org/download_jmeter.cgi),我用的 ...
- jmeter+ant+jenkins 搭建接口自动化测试
一.jmeter 我用的jmeter3.2 jmeter要运行,必须本地有java环境,所以需要配置jdk什么的,自行配置 二.ant 安装ant 第一步:下载ant http://ant.a ...
随机推荐
- 《算法》第四章部分程序 part 4
▶ 书中第四章部分程序,加上自己补充的代码,图的深度优先遍历 ● 无向图的深度优先遍历,有向 / 无向图代码仅若干方法名不同,包括递归和非递归版本,去掉了顶点有效性的检查 package packag ...
- hive随机采样
hive> select * from account limit 10;OKaccount.accountname account.accid account.platid ac ...
- 死无对证:tomcat7 + 中文cookie + goLang
查了下资料,很多人遇到这个问题,但是goLang使用得相对少 java.lang.IllegalArgumentException: Control character in cookie value ...
- C语言复习:结构体
结构体专题 01.结构体类型定义及结构体变量定义 char c1,char c2, char name[62]; int age char name[62]; int age,char ...
- Servlet之ServletContext获取web上下文路径、全局参数、和Attribute(域)
1)获取web上下文路径 public void doGet(HttpServletRequest request, HttpServletResponse response) throws Serv ...
- k8s删除一个Node并重新加入集群
k8s删除一个节点使用以下命令 删除一个节点前,先驱赶掉上面的pod kubectl drain 172.17.3.51 --delete-local-data 然后我们来删除节点 kubectl d ...
- 【363】python 相关小技巧
1. 对列表进行乱序 通过 random.shuffle() 方法实现,直接对列表进行操作 >>> import random >>> a = list(range ...
- Vue2 实例中的 data 属性三种写法与作用:
<script src="https://unpkg.com/vue/dist/vue.js"></script> <div id="app ...
- js实现刷新页面出现随机背景图
直接上代码: <script> var bodyBgs = []; bodyBgs[0] = "IMG/01.jpg"; ...
- ArcMap导入图层出现General function failure问题 [转]
ArcMap导入图层出现General function failure问题 [转] Link: http://www.cnblogs.com/angelx/p/3391967.html 问题描述 ...