ANT 的使用
概述
ant 是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于 Java 环境中的软件开发。
在与 Jmeter 生成的 jmx 文件配合使用中,ant 会完成jmx计划的执行和生成jtl文件,并将jtl文件转化为html页面进行查看。
还可与 Jenkins 配合使用。
优点:跨平台、操作简单、维护简单、集成方便。
依赖
在使用 ant 时请确保已经安装了 java jdk,因为ant的使用需要依赖java环境。
并且需要配置java环境变量。
安装
进入apache-ant 官网并下载 zip 包。https://ant.apache.org/bindownload.cgi

将下载好的 zip 解压。
解压后的 bin 目录是 ant 的程序运行入口,如果没用对 ant 进行环境变量的配置,在 bin 目录中运行bat程序,同样可以达到 build 任务目的。

ANT环境变量配置
为了使用起来方便,对 ant 进行环境变量配置。
在我的电脑 –> 右键属性 –> 高级系统配置 -> 环境变量->系统变量中添加 ant 路径。
新建系统变量 ANT_HOME = C:\apache-ant-1.9.9

在环境变量PATH的最后面添加一下内容:
;%ANT_HOME%\bin 注意前面的分号。

校验安装成功
使用 ant -version 对配置进行验证

使用
设置
jmeter默认保存的是.csv格式的文件,所以需要设置 bin/jmeter.properties 文件内容,将 jmeter.save.saveservice.output_format=csv 取消注释,并且将csv修改为xml;

将apache-jmeter-5.1.1\extras\ant-jmeter-1.1.1.jar拷贝到apache-ant-1.9.9\lib目录下;
这样ant运行时才能找到 "org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" 这个类,从而成功触发JMeter脚本。
新建 build.xml
在存放Jmeter导出的 jmx 目录下,新建build.xml文件,并且编辑内容如下:
在ant运行时会在当前目录下寻找build.xml文件,所以在运行时要确保 build.xml 在当前目录下。
<?xml version="1.0" encoding="utf-8"?>
<project name="Ant-Jmeter-Test" default="all" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="F:\yang\apache-jmeter-5.1.1" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="F:\yang\apache-jmeter-5.1.1\report" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="F:\yang\apache-jmeter-5.1.1\report" />
<!-- 生成的报告的前缀 -->
<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="all">
<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="F:\yang\apache-jmeter-5.1.1\case" includes="*.jmx" />
</jmeter>
</target>
<target name="report">
<xslt in="${jmeter.result.jtlName}" out="${jmeter.result.htmlName}" style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl" />
<!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
<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 内容则需要修改四个地方
修改内容如下图

还可以修改报告的名称,如下图标记的地方为测试报告的名称

ant 运行
进入build.xml 所在的目录,在命令行中使用 ant 命令进行运行

进入report的 html 目录下查看生成结果

打开 html 报告

但是时间显示为NaN
需要从Jmeter 的 lib 中将 xalan-2.7.2.jar 和 serializer-2.7.2.jar 两个包 copy到 Ant 的 lib 目录下
重新运行 ant 命令生成报告,结果如下

HTML 报告强化
下载 jmeter.results.shanhe.me.xsl 文件
下载地址:https://pan.baidu.com/s/1MJb3ctyEHS3eWwP_AVZbzg
下载后将文件放在...\apache-jmeter-5.1.1\extras 目录下
修改 build.xml 中 对应 style 的值,替换成下载的文件名,如下图

重新运行 ant 命令生成报告,结果如下

比起上个报告,多了好多参数
ANT 的使用的更多相关文章
- Jenkins 安装的HTML Publisher Plugin 插件无法展示ant生成的JunitReport报告
最近在做基于jenkins ant junit 的测试持续集成,单独ant junit生成的junitreport报告打开正常,使用Jenkins的HTML Publisher Plugin 插件无 ...
- React中使用Ant Table组件
一.Ant Design of React http://ant.design/docs/react/introduce 二.建立webpack工程 webpack+react demo下载 项目的启 ...
- [Ant]Ant简易教程
前言 Apache Ant,是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发.由Apache软件基金会所提供. Ant是纯Java语言编写的,所以具有 ...
- jenkins / ant / jmeter 持续集成接口自动化
1. 将 jmeter 脚本放在/var/lib/jenkins/workspace/Jmeter_auto/jmxpath路径下 2. 点击http://jk.facebank.net.cn/job ...
- Maven与Ant比较
Maven与Ant比较 0 « 上一篇:Jenkins学习三:介绍一些Jenkins的常用功能» 下一篇:Jenkins学习四:Jenkins 邮件配置 posted @ 2015-03-25 16: ...
- 一.Jmeter+Ant+Jenkins搭建持续集成接口性能自动化测试
微创新作品信息 1)微创新作品描述 A.为什么诞生: 1. 接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点.测试的重点是要检查数据的交换, ...
- Eclipce结合Ant进行编译、打包、传输、运行
注意: 用Ant构建时,build path只能是单级的,如默认的src,如果是类似basePath/jsr253这样的话,运行Ant build时会报错,说找不到jsr253. (此文讲述的是以an ...
- ant 使用指南
一.概述 ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发.在实际软件开发中,有很多地方可以用到ant. 开发环境: System:Windo ...
- 在Eclipse中集成Ant配置
提要:本文将向你展示如何使用Eclipse设置为Ant所用的属性值和环境变量,并简要分析如何配置Ant编辑器以便从Eclipse内部操作Ant文件. 一. 修改Ant Classpath 在使用一个可 ...
- windows+ant+git+tomcat中ant直接获取git项目部署注意点
最近项目搬迁到公司的"GitHub"上面原来的SVN的ant发布脚本要改下,于是百度ant获取git的方法太少了,windows平台上更是没有所以搞了两天,今天终于有点成果分享给大 ...
随机推荐
- 微信公众号token验证失败
我用的是python3+,而官网给的例子是python2的写法.问题就在python版本不同. 下面是截取官方的实例代码的一部分 list = [token, timestamp, nonce] li ...
- python selenium2 动态调试
#coding=utf-8'''Created on 2017-9-9 @author: ceshi 转自https://testerhome.com/topics/9897''' # rpcserv ...
- HttpRuntime应用程序运行时
System.Web.HttpRuntime类是整个Asp.net服务器处理的入口. 这个类提供了一系列的静态属性,反映web应用程序域的设置信息,而且每个web应用程序域中存在一个System.We ...
- KDE 上 任务栏 图标位置更改
任务栏上图标是不能直接拖拽的. 右键点任务栏,选[Panel Options -> Panel Settins]之后,就可以拖拽了. 完成之后,按X就行了.
- pyenv python 多版本管理工具
pyenv fork 自rbenv 以及ruby-build ,然后修改为转为python 使用 venv 以及virtualenv 解决了版本选择的问题,pyenv 同时为我们解决 了python ...
- 【2019.7.25 NOIP模拟赛 T1】变换(change)(思维+大分类讨论)
几个性质 我们通过推式子可以发现: \[B⇒AC⇒AAB⇒AAAC⇒C\] \[C⇒AB⇒AAC⇒AAAB⇒B\] 也就是说: 性质一: \(B,C\)可以相互转换. 则我们再次推式子可以发现: \[ ...
- 【转】java 泛型详解
java 泛型详解 对java的泛型特性的了解仅限于表面的浅浅一层,直到在学习设计模式时发现有不了解的用法,才想起详细的记录一下. 本文参考java 泛型详解.Java中的泛型方法. java泛型详解 ...
- [LeetCode] 235. Lowest Common Ancestor of a Binary Search Tree 二叉搜索树的最小共同父节点
Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in the BS ...
- 解决 ora-01795 的问题
''' <summary> ''' 在 oracle 里 , where in 语句有可能造成问题 : ORA-01795:列表中的最大表达式数为1000 ''' 如果我们在拼接where ...
- 【redis】分布式锁实现,与分布式定时任务
如果你还不知道redis的基本命令与基本使用方法,请看 [redis]redis基础命令学习集合 写在前面 redis辣么多数据结构,这么多命令,具体一点,都可以应用在什么场景呢?用来解决什么具体的问 ...