【转】Jenkins+Ant+Jmeter接口自动化集成测试实例
出处:https://my.oschina.net/MrToStudy/blog/742251
一、Jenkins安装配置
1、安装配置JDK1.6+环境变量;
2、下载jenkins.war,放入C:\jenkins目录下,目录位置随意;
Jenkins启动方法:
cmd进入Jenkins目录下,执行java -jar jenkins.war
浏览器输入:localhost:8080可以访问Jenkins表示配置成功;
二、Ant安装配置
1、下载apache-ant-1.9.6;放入E盘,如E:\apache-ant-1.9.6,目录位置随意
2、配置环境变量:
ANT_HOME E:\apache-ant-1.9.6
path E:\apache-ant-1.9.6
classpath E:\apache-ant-1.9.6
3、验证Ant配置是否成功;
cmd下输入Ant提示如下表示配置成功:
Buildfile: build.xml does not exist!
Build failed
三、配置xml文件
1、Jmeter目录位置:D:\tools\apache-jmeter-2.11,在jmeter中建立demo文件夹,demo中创建build.xml文件,需要配置Jmeter目录、生成报告的路径,报告的格式和脚本目录,内容如下:
<?xml version="1.0" encoding="UTF8"?>
<project name="ant-jmeter-test" default="run" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<property environment="env"/>
<property name="ReportName" value="TestReport" />
<!-- 本地的 Jmeter 目录-->
<property name="jmeter.home" value="D:\tools\apache-jmeter-2.11" />
<!-- jmeter生成报告的路径-->
<property name="jmeter.result.dir" value="${env.WORKSPACE}/results/${env.BUILD_ID}" />
<!-- 生成jtl、html格式的报告,以构建ID命名-->
<property name="jmeter.result.jtlName" value="${env.WORKSPACE}/results/${env.BUILD_ID}/${env.BUILD_ID}.jtl" />
<property name="jmeter.result.htmlName" value="${env.WORKSPACE}/results/${env.BUILD_ID}/${env.BUILD_ID}.html" />
<target name="run">
<echo message="start..."/>
<antcall target="clean" />
<antcall target="test" />
<antcall target="report" />
</target>
<target name="clean">
<mkdir dir="${env.WORKSPACE}/results/${env.BUILD_ID}" />
</target>
<target name="test">
<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
<jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
<!-- 声明要运行的脚本和此目录下的jmeter脚本-->
<testplans dir="D:\tools\apache-jmeter-2.11\demo" includes="login.jmx" />
<property name="jmeter.save.saveservice.output_format" value="xml"/>
</jmeter>
</target>
<target name="report">
<xslt in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}"
style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl" />
</target>
</project>
其中${env.WORKSPACE}/results/${env.BUILD_ID}/${env.BUILD_ID}.jtl和
${env.WORKSPACE}/results/${env.BUILD_ID}/${env.BUILD_ID}.html生成的报告位置在:
C:\Users\Administrator\.jenkins\jobs\test\workspace\results目录下,每次进行Jenkins构建的时候,都会生成一个新的构建编号目录和结果报告;
2、将jmeter测试脚本放入demo目录下,当然放入其他位置也可以,build.xml中需要配置jmeter脚本存放路径的对应位置。
四、构建Jenkins项目
1、启动Jenkins,浏览器输入localhost:8080进入管理界面,点击新建;
2、输入项目名称:Test_demo,选择构建一个自由风格的软件项目,点击OK;
3、勾选丢弃旧的构建,配置如下:
4、构建,增加构建步骤选择Invoke Ant,Targets输入run,点击高级,Build File输入build.xml文件路径,保存;
5、返回主页可以看到新建的项目,点击构建即可启动测试;
6、左侧可以看到启动状态及构建编号;
7、进入构建编号目录C:\Users\Administrator\.jenkins\jobs\Test_demo\workspace\results\60下即可查看jmeter脚本运行的报告;
五、使用Tomcat查看测试结果:
1、修改build.xml文件html报告生成的路径,report文件在demo路径下,修改如下:
<property name="jmeter.result.htmlName" value="report/report.html" />
2、配置为tomcat的虚拟目录
a、配置server.xml
打开Tomcat目录下的/conf/server.xml文件,在Host标签之间加入下面内容。
<Context path="/test/report" docBase="/test/report " reloadable="true" debug="0"/>
path:工程名称+文件路径,当访问path目录下的文件时,实则访问docBase目录下的文件。
docBase:文件的真实路径。注意这里如果有文件长传,则将上传的文件路径设置为docBase,而不是path。
b、修改tomcat端口
Tomcat端口8080已经被Jenkins占用,则需要修改端口,打开Tomcat目录下的/conf/server.xml文件,将connector port修改成8088
<Connector port="8088" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" /
c、配置web.xml
打开Tomcat目录下的/conf/web.xml,将listings的属性设置为True。
<servlet>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
访问localhost:8088/report即可访问结果报告。
当然Jenkins的功能远不止这些,还有很多强大的地方等着你去发现。
【转】Jenkins+Ant+Jmeter接口自动化集成测试实例的更多相关文章
- Jenkins+Ant+Jmeter接口自动化集成测试实例
Jenkins+Ant+Jmeter接口自动化集成测试实例 一.Jenkins安装配置 1.安装配置JDK1.6+环境变量: 2.下载jenkins.war,放入C:\jenkins目录下,目录位置随 ...
- Jenkins+Ant+Jmeter接口自动化集成测试
一.Jmeter+ant 1.首先我们默认Jmeter脚本已经录制好了,并测试通过,存在(查询模块.jmx)脚本 2.将JMeter所在目录下extras子目录里的ant-JMeter-1.1.1.j ...
- Jenkins+ant+Jmeter接口自动化框架搭建
工具准备 JDK: jdk1.8.0_111 Ant: apache-ant-1.9.9 Jmeter: apache-jmeter-3.1 Jenkins: jenkins-2.7.4 JDK安装 ...
- Jenkins+ant+jmeter接口自动化
1.Jenkins新建slave节点 2.Jenkins新建job,配置job,关联到slave, 3.执行构建 build文件如下 <?xml version="1.0" ...
- jenkins+ant+jmeter接口自动化的持续集成
一.jmeter.jenkins安装 这里不再说明,请看上一个随笔!!! 链接:https://www.cnblogs.com/magicYJ/p/11839646.html 二.ant安装 下载地址 ...
- jenkins+ant+jmeter实现自动化集成(详解)
jenkins+ant+jmeter实现自动化集成 for window 一.jmeter 1.jmeter安装 二.ant 1.ant安装 三.ant运行 jmeter脚本 1.配置 四.jenki ...
- Jenkins+Ant+JMeter报告自动化
1.参考Jenkins+Ant+JMeter集成,安装Jenkins(不需要安装Performance Plugin插件),建立Slave节点,连接Slave节点,创建任务等. 2.将Jenkins+ ...
- jenkins+ant+jmeter接口自动化测试(持续构建)
使用badboy录制脚本,到处到jmeter后进行接口自动化,后来想着 可不可以用自动化来跑脚本呢,不用jmeter的图形界面呢, 选择了ant来进行构建,最后想到了用Jenkins来进行持续构建接口 ...
- Jenkins+Maven+Jmeter接口自动化持续集成测试
在上一篇<利用xsltproc转换jtl报告到html报告>中,解决了html报告的问题.本篇主要还是利用Jenkins来做持续集成测试. Jenkins需要安装的插件 Maven Int ...
随机推荐
- IntelliJ IDEA 14.x 的 project 和 module 是啥关系?
使用基于IntelliJ的IDE,如phpstorm.android studio都会对project和module的关系比较糊涂,简单的概括如下: IntelliJ系中的 Project 相当于Ec ...
- 如何命令行编译Java工程
在src下的包含Main的包下打开命令行,javac -classpath “路径到src,不到包下” Main.java
- 基于CoreText的排版引擎
前言 本人今年主要在负责猿题库iOS客户端的开发,本文旨在通过分享猿题库iOS客户端开发过程中的技术细节,达到总结和交流的目的. 这是本技术分享系列文章的第三篇.本文涉及的技术细节是:基于CoreTe ...
- 【maven】maven的web项目打包报错:No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK
打包过程中报错如下: No compiler is provided in this environment. Perhaps you are running on a JRE rather than ...
- kubernetes1.5.2--部署DNS服务
本文基于kubernetes 1.5.2版本编写 在kubernetes1.2之前,采用skydns+kube2dns+etcd的方式来部署dns.而从1.3开始,则部署方式有了一点儿变化,将skyd ...
- Linux目录处理命令
1 创建命令 mkdir -p 目录名 其中 -p表示递归创建,英文为make directories td@td-Lenovo-IdeaPad-Y410P:~$ mkdir Test 上述命令在 ...
- 五个常用的Linux监控脚本代码
bash中 2>&1 & 的解释 1.首先,bash中0,1,2三个数字分别代表STDIN_FILENO.STDOUT_FILENO.STDERR_FILENO,即标准输入(一般 ...
- 为什么实现Serializbale接口就能够进行序列化?
从所周知,Serializbale接口是个空的接口,并没有定义任何方法.那么问题来了,为什么需要序列化的接口只要实现Serializbale接口就能够进行序列化? 这要从序列化过程的源码说起.举个例子 ...
- 使用Java取得本机IP和机器名
try { InetAddress addr = InetAddress.getLocalHost(); String ip=addr.getHostAddress().toString();//获得 ...
- Bounded Context
From http://martinfowler.com/bliki/BoundedContext.html Bounded Context is a central pattern in Domai ...