Jenkins+Ant+Jmeter接口自动化集成测试实例

一、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接口自动化集成测试实例的更多相关文章

  1. 【转】Jenkins+Ant+Jmeter接口自动化集成测试实例

    出处:https://my.oschina.net/MrToStudy/blog/742251 一.Jenkins安装配置 1.安装配置JDK1.6+环境变量: 2.下载jenkins.war,放入C ...

  2. Jenkins+Ant+Jmeter接口自动化集成测试

    一.Jmeter+ant 1.首先我们默认Jmeter脚本已经录制好了,并测试通过,存在(查询模块.jmx)脚本 2.将JMeter所在目录下extras子目录里的ant-JMeter-1.1.1.j ...

  3. 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安装 ...

  4. Jenkins+ant+jmeter接口自动化

    1.Jenkins新建slave节点 2.Jenkins新建job,配置job,关联到slave, 3.执行构建 build文件如下 <?xml version="1.0" ...

  5. jenkins+ant+jmeter接口自动化的持续集成

    一.jmeter.jenkins安装 这里不再说明,请看上一个随笔!!! 链接:https://www.cnblogs.com/magicYJ/p/11839646.html 二.ant安装 下载地址 ...

  6. jenkins+ant+jmeter实现自动化集成(详解)

    jenkins+ant+jmeter实现自动化集成 for window 一.jmeter 1.jmeter安装 二.ant 1.ant安装 三.ant运行 jmeter脚本 1.配置 四.jenki ...

  7. Jenkins+Ant+JMeter报告自动化

    1.参考Jenkins+Ant+JMeter集成,安装Jenkins(不需要安装Performance Plugin插件),建立Slave节点,连接Slave节点,创建任务等. 2.将Jenkins+ ...

  8. jenkins+ant+jmeter接口自动化测试(持续构建)

    使用badboy录制脚本,到处到jmeter后进行接口自动化,后来想着 可不可以用自动化来跑脚本呢,不用jmeter的图形界面呢, 选择了ant来进行构建,最后想到了用Jenkins来进行持续构建接口 ...

  9. Jenkins+Maven+Jmeter接口自动化持续集成测试

    在上一篇<利用xsltproc转换jtl报告到html报告>中,解决了html报告的问题.本篇主要还是利用Jenkins来做持续集成测试. Jenkins需要安装的插件 Maven Int ...

随机推荐

  1. HDU 1596 最短路变形

    这道题怎么都是TLE,报警了,先放在这 http://acm.hdu.edu.cn/showproblem.php?pid=1596 #include <iostream> #includ ...

  2. 前端动画小记---bilibili ( ゜-゜)つロ客户下载小动画

    逛哔哩哔哩 ( ゜-゜)つロPC版的时候看到一个蛮有意思的动画,指导用户去下载客户端,于是摸索实现了一个. 原动画效果 可以看到,一个静止的小电视人,当鼠标移动到电视人身上时,电视人慢慢变身成为一个小 ...

  3. 03.CSS选择器-->交集并集选择器

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. php 生成唯一id的几种解决方法(实例)

    php 生成唯一id,网上查了下,有很多的方法 1.md5(time() . mt_rand(1,1000000)); 这种方法有一定的概率会出现重复 2.php内置函数uniqid() uniqid ...

  5. 支持n多视频网站的下载,推荐 you-get

    其实刚开始是想下载youtube视频, 网上找了下 其中之一:http://jingyan.baidu.com/article/39810a23d2deb2b637fda66c.html 访问一个在线 ...

  6. FineReport和泛微OA(Ecology)的单点登录集成方案

    最近出现了很多关于帆软报表和泛微OA的集成问题,均出现在“单点登录”上.直接也有相关的文章介绍一些FineReport和泛微集成的背景.价值等,以及FineReport和OA的深度集成的方案,但是并没 ...

  7. 如何从只会 C++ 语法的水平到达完成项目编写软件的水平?

    原文:https://www.zhihu.com/question/29702729 学习 C++ 有一段时间了,但只是停留在熟悉语法阶段,在看 C++primer,不过感觉这本书比较深奥,不太适合, ...

  8. [学习] nofollow

    [来源:百度百科 http://baike.baidu.com/view/1584081.htm] 简介 nofollow[1]是一个HTML标签的属性值.它的出现为网站管理员提供了一种方式,即告诉搜 ...

  9. EventTarge Node Docuement Element HTMLElement 关系

    综述: 可以将其看做是依次继承的关系: Node Node A Node is an interface from which a number of DOM types inherit, and a ...

  10. Non-resolvable parent POM for com.*******

    场景: 同事新打了一个jar包到私服里面,自己删除了本地对应的中央仓库的依赖包,再次重新下载.  于是我又打开了一个idea的窗口重新引入这个项目,然后重新下载依赖的服务. 结果就一直报这个问题... ...