jenkins+jmeter+ant自动化接口测试集成

搭建环境(JDK、Ant、Jmeter、Jenkin最近版本):

JDK:jdk1.8.0_60

Ant:apache-ant-1.10.2

Jmeter: apache-jmeter-3.0

Jenkins:Jenkins 2.88

1、JDK的安装

双击JDK安装包,选择安装路径C:\Progrom Files\Java\jdk1.8.0_60路径下);

1)系统变量→新建 JAVA_HOME 变量 。

变量值填写jdk的安装目录(本人是 C:\Progrom Files\Java\jdk1.8.0_60);

2)系统变量→寻找 Path 变量→编辑

在变量值最后输入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

(注意原来Path的变量值末尾有没有;号,如果没有,先输入;号再输入上面的代码)

3)系统变量→新建 CLASSPATH 变量

变量值填写 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar (注意最前面有一点)

系统变量配置完毕

4)检验是否配置成功 运行cmd 输入 java -version (java 和 -version 之间有空格)

2、jmeter安装

1)解压apache-jmeter-3.0.zip到D:\Progrom Files目录下。

2)将以下两个文件夹下的插件拷贝到D:\Progrom Files\apache-jmeter-3.0\lib\ext目录下

3)环境变量配置

a、 设置环境变量,新建系统变量在变量名中输入:JMETER_HOME,变量值中输入:D:\Progrom Files\apache-jmeter-3.0,点击确定即可。

b、在环境变量CLASSSPATH中添加%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;

%JMETER_HOME%\lib\logkit-2.0.jar;(注意:你要看下你的是不是logkit-2.0这个版本).

c、 检验是否配置成功 运行cmd 输入 jmeter -v (jmeter和 -v 之间有空格)

若如图所示 显示版本信息 则说明安装和配置成功。

3、安装ant

1)解压apache-ant-1.10.2.zip到D:\Progrom Files目录下;

2)配置环境变量

a、新建以下环境变量

ANT_HOME:D:\Progrom Files\apache-ant-1.9.7,此为你的ANT安装路径;

b、在环境变量PATH的最后面添加一下内容:

;%ANT_HOME%\bin 注意前面的分号,如果PATH中最后没有分号";"的话要加上,有的话就可去除。

c、进入cmd命令窗口,在CMD窗口中输入ant -version,敲击回城键,会显示出你安装的ANT版本,如果成功显示,说明你的配置应该是成功了。

3)本地调试使用ant构建运行Jmeter,并且生成jtl、Html报告;

jmeter默认保存的是.csv格式的文件,所以我们先要设置一下bin/jmeter.properties文件内容,修改jmeter.properties文件 jmeter.save.saveservice.output_format=xml;
将apache-jmeter-3.0\extras\ant-jmeter-1.1.1.jar拷贝到apache-ant-1.10.2\lib目录下;
配置D:\Program Files\apache-jmeter-3.0\extras目录下build.xml文件
build文件配置

<?xml version="1.0" encoding="UTF-8"?>
<project name="ant-jmeter-test" default="run" basedir=".">
<taskdef resource="net/sf/antcontrib/antlib.xml" />
<!-- (1)需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="D:\Program Files\apache-jmeter-3.0"/>
<property name="report.title" value="report"/>
<!-- (2)jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="D:\Program Files\apache-jmeter-3.0\reports\jtl"/>
<!-- (3)jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="D:\Program Files\apache-jmeter-3.0\reports\html"/>
<!-- 生成的报告的前缀 -->
<property name="ReportName" value="TestReport"/>
<property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}.jtl"/>
<property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}.html"/>

<target name="run">
<antcall target="test"/>
<antcall target="report"/>
<!--antcall target="mail"/-->
</target>
<target name="test">
<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"/>
<jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
<!-- (4)build.xml的存放的路径-->
<testplans dir="D:\Program Files\apache-jmeter-3.0\demo" includes="*.jmx"/>
<property name="jmeter.save.saveservice.output_format" value="xml"/>
</jmeter>
</target>
<path id="xslt.classpath">
<fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
<fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
</path>
<target name="report">
<tstamp>
<format property="report.datestamp" pattern="yyyy/MM/dd HH:mm"/>
</tstamp>
<xslt
classpathref="xslt.classpath"
force="true"
in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}"
style="${jmeter.home}/extras/jmeter-results-detail-report.xsl">
<param name="dateReport" expression="${report.datestamp}"/>
</xslt> 

<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png"/>
<include name="expand.png"/>
</fileset>
</copy>
</target>
<path id="lib_classpath">
<fileset dir="${basedir}/">
<include name="mail*.jar" />
<include name="activation*.jar" />
<include name="commons-email*.jar" />
<include name="ant-contrib*.jar" />
</fileset>
</path>
<!--target name="mail">
<for list="[email protected]" param="tmp" >
<sequential>
<echo>message @{tmp}</echo>
<mail mailhost="smtp.thunisoft.com" mailport="25" ssl="false" subject="ant mail" messagemimetype="text/html" user="zhangjn" password="*******" tolist="@{tmp}">
<from address="[email protected]" />
<fileset dir="${jmeter.result.html.dir}">
<include name="*.html" />
<include name="*.png" />
</fileset>
<message>支持多人同时发邮件!!<br /><br /></message>
</mail>
</sequential>
</for>
</target-->
</project>

  

备注:注释中的(1)(2)(3)(4)该成自己的路径;jmeter-results-detail-report.xsl这个配置值在你的

${jmeter.home}/extras目录下是不是这个名称,配置改成你对应的名称就可以了;把build.xml文件放到(4)中配置的这个路径中
D:\Program Files\apache-jmeter-3.0\demo,并把要执行的脚本也放到同一目录下,如图:

5、cmd到demo的目录下执行ant命令,如图:

以上说明执行成功了,到你配置的报告目录下去看生成的报告D:\Program Files\apache-jmeter-3.0\reports\html

备注:如果生成的报告为空的,可能是你的jmeter-results-detail-report.xsl配置有问题可以参考一下配置:

<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

<!--
Stylesheet for processing 2.1 output format test result files
To uses this directly in a browser, add the following to the JTL file as line 2:
<?xml-stylesheet type="text/xsl" href="../extras/jmeter-results-detail-report_21.xsl"?>
and you can then view the JTL in a browser
-->

<xsl:output method="html" indent="yes" encoding="UTF-8" doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" />

<!-- Defined parameters (overrideable) -->
<xsl:param name="showData" select="‘n‘"/>
<xsl:param name="titleReport" select="‘Load Test Results‘"/>
<xsl:param name="dateReport" select="‘date not defined‘"/>

<xsl:template match="testResults">
<html>
<head>
<title><xsl:value-of select="$titleReport" /></title>
<style type="text/css">
body {
font:normal 68% verdana,arial,helvetica;
color:#000000;
}
table tr td, table tr th {
font-size: 68%;
}
table.details tr th{
color: #ffffff;
font-weight: bold;
text-align:center;
background:#2674a6;
white-space: nowrap;
}
table.details tr td{
background:#eeeee0;
white-space: nowrap;
}
h1 {
margin: 0px 0px 5px; font: 165% verdana,arial,helvetica
}
h2 {
margin-top: 1em; margin-bottom: 0.5em; font: bold 125% verdana,arial,helvetica
}
h3 {
margin-bottom: 0.5em; font: bold 115% verdana,arial,helvetica
}
.Failure {
font-weight:bold; color:red;
}

img
{
border-width: 0px;
}

.expand_link
{
position=absolute;
right: 0px;
width: 27px;
top: 1px;
height: 27px;
}

.page_details
{
display: none;
}

.page_details_expanded
{
display: block;
display/* hide this definition from IE5/6 */: table-row;
}

</style>
<script language="JavaScript"><![CDATA[
function expand(details_id)
{

document.getElementById(details_id).className = "page_details_expanded";
}

function collapse(details_id)
{

document.getElementById(details_id).className = "page_details";
}

function change(details_id)
{
if(document.getElementById(details_id+"_image").src.match("expand"))
{
document.getElementById(details_id+"_image").src = "collapse.png";
expand(details_id);
}
else
{
document.getElementById(details_id+"_image").src = "expand.png";
collapse(details_id);
}
}
]]></script>
</head>
<body>

<xsl:call-template name="pageHeader" />

<xsl:call-template name="summary" />
<hr size="1" width="95%" align="center" />

<xsl:call-template name="pagelist" />
<hr size="1" width="95%" align="center" />

<xsl:call-template name="detail" />

</body>
</html>
</xsl:template>

<xsl:template name="pageHeader">
<h1><xsl:value-of select="$titleReport" /></h1>
<table width="100%">
<tr>
<td align="left">Date report: <xsl:value-of select="$dateReport" /></td>
<td align="right">Designed for use with <a href="http://jmeter.apache.org/">JMeter</a> and <a href="http://ant.apache.org">Ant</a>.</td>
</tr>
</table>
<hr size="1" />
</xsl:template>

<xsl:template name="summary">
<h2>Summary</h2>
<table align="center" class="details" border="0" cellpadding="5" cellspacing="2" width="95%">
<tr valign="top">
<th># Samples</th>
<th>Failures</th>
<th>Success Rate</th>
<th>Average Time</th>
<th>Min Time</th>
<th>Max Time</th>
</tr>
<tr valign="top">
<xsl:variable name="allCount" select="count(/testResults/*)" />
<xsl:variable name="allFailureCount" select="count(/testResults/*[attribute::s=‘false‘])" />
<xsl:variable name="allSuccessCount" select="count(/testResults/*[attribute::s=‘true‘])" />
<xsl:variable name="allSuccessPercent" select="$allSuccessCount div $allCount" />
<xsl:variable name="allTotalTime" select="sum(/testResults/*/@t)" />
<xsl:variable name="allAverageTime" select="$allTotalTime div $allCount" />
<xsl:variable name="allMinTime">
<xsl:call-template name="min">
<xsl:with-param name="nodes" select="/testResults/*/@t" />
</xsl:call-template>
</xsl:variable>
<xsl:variable name="allMaxTime">
<xsl:call-template name="max">
<xsl:with-param name="nodes" select="/testResults/*/@t" />
</xsl:call-template>
</xsl:variable>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="$allFailureCount > 0">Failure</xsl:when>
</xsl:choose>
</xsl:attribute>
<td align="center">
<xsl:value-of select="$allCount" />
</td>
<td align="center">
<xsl:value-of select="$allFailureCount" />
</td>
<td align="center">
<xsl:call-template name="display-percent">
<xsl:with-param name="value" select="$allSuccessPercent" />
</xsl:call-template>
</td>
<td align="center">
<xsl:call-template name="display-time">
<xsl:with-param name="value" select="$allAverageTime" />
</xsl:call-template>
</td>
<td align="center">
<xsl:call-template name="display-time">
<xsl:with-param name="value" select="$allMinTime" />
</xsl:call-template>
</td>
<td align="center">
<xsl:call-template name="display-time">
<xsl:with-param name="value" select="$allMaxTime" />
</xsl:call-template>
</td>
</tr>
</table>
</xsl:template>

<xsl:template name="pagelist">
<h2>Pages</h2>
<table align="center" class="details" border="0" cellpadding="5" cellspacing="2" width="95%">
<tr valign="top">
<th>URL</th>
<th># Samples</th>
<th>Failures</th>
<th>Success Rate</th>
<th>Average Time</th>
<th>Min Time</th>
<th>Max Time</th>
<th></th>
</tr>
<xsl:for-each select="/testResults/*[not(@lb = preceding::*/@lb)]">
<xsl:variable name="label" select="@lb" />
<xsl:variable name="count" select="count(../*[@lb = current()/@lb])" />
<xsl:variable name="failureCount" select="count(../*[@lb = current()/@lb][attribute::s=‘false‘])" />
<xsl:variable name="successCount" select="count(../*[@lb = current()/@lb][attribute::s=‘true‘])" />
<xsl:variable name="successPercent" select="$successCount div $count" />
<xsl:variable name="totalTime" select="sum(../*[@lb = current()/@lb]/@t)" />
<xsl:variable name="averageTime" select="$totalTime div $count" />
<xsl:variable name="minTime">
<xsl:call-template name="min">
<xsl:with-param name="nodes" select="../*[@lb = current()/@lb]/@t" />
</xsl:call-template>
</xsl:variable>
<xsl:variable name="maxTime">
<xsl:call-template name="max">
<xsl:with-param name="nodes" select="../*[@lb = current()/@lb]/@t" />
</xsl:call-template>
</xsl:variable>
<tr valign="top">
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="$failureCount > 0">Failure</xsl:when>
</xsl:choose>
</xsl:attribute>
<td>
<xsl:if test="$failureCount > 0">
<a><xsl:attribute name="href">#<xsl:value-of select="$label" /></xsl:attribute>
<xsl:value-of select="$label" />
</a>
</xsl:if>
<xsl:if test="0 >= $failureCount">
<xsl:value-of select="$label" />
</xsl:if>
</td>
<td align="center">
<xsl:value-of select="$count" />
</td>
<td align="center">
<xsl:value-of select="$failureCount" />
</td>
<td align="right">
<xsl:call-template name="display-percent">
<xsl:with-param name="value" select="$successPercent" />
</xsl:call-template>
</td>
<td align="right">
<xsl:call-template name="display-time">
<xsl:with-param name="value" select="$averageTime" />
</xsl:call-template>
</td>
<td align="right">
<xsl:call-template name="display-time">
<xsl:with-param name="value" select="$minTime" />
</xsl:call-template>
</td>
<td align="right">
<xsl:call-template name="display-time">
<xsl:with-param name="value" select="$maxTime" />
</xsl:call-template>
</td>
<td align="center">
<a href="">
<xsl:attribute name="href"><xsl:text/>javascript:change(‘page_details_<xsl:value-of select="position()" />‘)</xsl:attribute>
<img src="expand.png" alt="expand/collapse"><xsl:attribute name="id"><xsl:text/>page_details_<xsl:value-of select="position()" />_image</xsl:attribute></img>
</a>
</td>
</tr>

<tr class="page_details">
<xsl:attribute name="id"><xsl:text/>page_details_<xsl:value-of select="position()" /></xsl:attribute>
<td colspan="8" bgcolor="#FF0000">
<div align="center">
<b>Details for Page "<xsl:value-of select="$label" />"</b>
<table bordercolor="#000000" bgcolor="#2674A6" border="0" cellpadding="1" cellspacing="1" width="95%">
<tr>
<th>Thread</th>
<th>Iteration</th>
<th>Time (milliseconds)</th>
<th>Bytes</th>
<th>Success</th>
</tr>

<xsl:for-each select="../*[@lb = $label and @tn != $label]">
<tr>
<td><xsl:value-of select="@tn" /></td>
<td align="center"><xsl:value-of select="position()" /></td>
<td align="right"><xsl:value-of select="@t" /></td>
<!-- TODO allow for missing bytes field -->
<td align="right"><xsl:value-of select="@by" /></td>
<td align="center"><xsl:value-of select="@s" /></td>
</tr>
</xsl:for-each>

</table>
</div>
</td>
</tr>

</xsl:for-each>
</table>
</xsl:template>

<xsl:template name="detail">
<xsl:variable name="allFailureCount" select="count(/testResults/*[attribute::s=‘false‘])" />

<xsl:if test="$allFailureCount > 0">
<h2>Failure Detail</h2>

<xsl:for-each select="/testResults/*[not(@lb = preceding::*/@lb)]">

<xsl:variable name="failureCount" select="count(../*[@lb = current()/@lb][attribute::s=‘false‘])" />

<xsl:if test="$failureCount > 0">
<h3><xsl:value-of select="@lb" /><a><xsl:attribute name="name"><xsl:value-of select="@lb" /></xsl:attribute></a></h3>

<table align="center" class="details" border="0" cellpadding="5" cellspacing="2" width="95%">
<tr valign="top">
<th>Response</th>
<th>Failure Message</th>
<xsl:if test="$showData = ‘y‘">
<th>Response Data</th>
</xsl:if>
</tr>

<xsl:for-each select="/testResults/*[@lb = current()/@lb][attribute::s=‘false‘]">
<tr>
<td><xsl:value-of select="@rc | @rs" /> - <xsl:value-of select="@rm" /></td>
<td><xsl:value-of select="assertionResult/failureMessage" /></td>
<xsl:if test="$showData = ‘y‘">
<td><xsl:value-of select="./binary" /></td>
</xsl:if>
</tr>
</xsl:for-each>

</table>
</xsl:if>

</xsl:for-each>
</xsl:if>
</xsl:template>

<xsl:template name="min">
<xsl:param name="nodes" select="/.." />
<xsl:choose>
<xsl:when test="not($nodes)">NaN</xsl:when>
<xsl:otherwise>
<xsl:for-each select="$nodes">
<xsl:sort data-type="number" />
<xsl:if test="position() = 1">
<xsl:value-of select="number(.)" />
</xsl:if>
</xsl:for-each>
</xsl:otherwise>
</xsl:choose>
</xsl:template>

<xsl:template name="max">
<xsl:param name="nodes" select="/.." />
<xsl:choose>
<xsl:when test="not($nodes)">NaN</xsl:when>
<xsl:otherwise>
<xsl:for-each select="$nodes">
<xsl:sort data-type="number" order="descending" />
<xsl:if test="position() = 1">
<xsl:value-of select="number(.)" />
</xsl:if>
</xsl:for-each>
</xsl:otherwise>
</xsl:choose>
</xsl:template>

<xsl:template name="display-percent">
<xsl:param name="value" />
<xsl:value-of select="format-number($value,‘0.00%‘)" />
</xsl:template>

<xsl:template name="display-time">
<xsl:param name="value" />
<xsl:value-of select="format-number($value,‘0 ms‘)" />
</xsl:template>

</xsl:stylesheet>

4、jenkins安装

1)之前本地已经安装过jenkins了,这里就不在讲如何安装jenkins。

2)jenkins构建项目

a、输入任务名称,点击构建一个自由风格的软件项目,点击确定

b、在构建中添加Invoke Ant

c、在点击高级

配置你在build.xml文件中配置的build.xml的路径,点击保存

d、点击立即构建,出现蓝色说明执行成功了,如图:

备注:到你在build.xml中配置的报告路径去找执行后的报告就可以了。
————————————————
版权声明:本文为CSDN博主「qq_30684681」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_30684681/article/details/79577372

原文地址:https://www.cnblogs.com/tsgxj/p/11571804.html

时间: 2024-10-01 10:27:25

jenkins+jmeter+ant自动化接口测试集成的相关文章

Jenkins+Jmeter+Ant自动化集成环境搭建

搭建环境: JDK:jdk1.7.0_79 Ant:apache-ant-1.9.7 Jmeter: apache-jmeter-2.13 Jenkins: jenkins-1.651.1 以上安装包以及相关工具下载地址: http://pan.baidu.com/s/1pKWPi5d JDK安装: 配置JDK环境变量: 双击JDK安装包,选择安装路径(为了节省C盘系统盘空间,不建议选择默认路径.本人所有相关软件全部安装在 D:\Progrom Files目录下,例如Jdk安装在D:\Progr

jenkins+jmeter+ant搭建接口测试平台

接口测试的重点是检查数据的交换,传递和控制管理过程以及系统间的相互逻辑依赖关系. 接口测试的流程 项目启动后,测试人员要尽早拿到接口测试文档. 开始编写接口测试用例 将接口测试用例部署到持续集成的测试环境中 设定运行频率,告警方式等. 维护接口脚本. JMETER是一个性能测试工具.主要用来测试CGI, WEBSERVICE,DB等类型的测试. 1. 在JMETER中编写接口请求.填写域名,路径,随请求一起发送的参数 2.对返回的结果设置断言. 接口测试脚本就做好了. 接口测试返回的是jtl的测

Jenkins + Jmeter +Ant自动化集成环境搭建(一)

所需工具 一.jmeter 工具下载 https://jmeter.apache.org/  配置环境JDK等及各种插件可以看小七之前的教程 二.Ant安装(http://ant.apache.org/) 安装Ant是为了后续在Jenkins中封装.构建.执行需要用到 Apache Ant? Apache Ant是一个Java库和命令行工具,其任务是将构建文件中描述的进程作为相互依赖的目标和扩展点.Ant的主要用途是构建Java应用程序.Ant提供了许多内置任务,允许编译,组装,测试和运行Jav

jenkins,jmeter,ant

1.安装 jenkins, jmeter, ant 2.将 jmeter下extras中的 ant-jmeter-1.1.1.jar拷贝到ant的lib下面 3.将 jmeter下collapse.png, expand.png, jmeter-result-detail-report_21.xsl拷贝到ant安装目录下 这些是生成测试报告的关键点 4.将 jmeter下的build.xml文件拷贝到ant安装目录下,对build.xml的文件进行修改 建议将各种property name=**

Windows下搭建Jenkins+Jmeter+Ant 自动测试环境

1.JDK \Jmeter \ Ant安装: 1.1.      安装JDK: 双击jdk-7u80-windows-x64.exe安装,默认安装到C:\ProgramFiles\Java目录 1.2.      安装Jmeter: 在我的电脑-E盘(建议与文档保持一致,否则需要修改配置文件),新建apache文件夹,然后将apache-jmeter-3.0.rar解压到到当前目录. 1.3.      安装Ant: 将apache-Ant-1.9.7.rar复制到E:\apache目录,然后解

Jenkins+svn+ant+tomcat持续集成

Jenkins是基于Java开发的一种持续集成工具,用于监控秩序重复的工作.通过Jenkins+svn+ant+tomcat整合,可以完成对系统源代码的下载更新,以及代码的自动编译打包和项目的自动部署工作,而且项目的自动构建与平台无关,可以定时操作,从而使得测试人员脱离开发人员. 1.Jenkins工作原理 Jenkins是一个管理者,定时从svn获取更新的代码,拷贝到自己的workspace,然后利用ant将源码编译并生成war包,拷贝到tomcat的webapp目录下,再调用tomcat启动

我的套路(windows):Jenkins+Jmeter+Ant持续集成

一.Jenkins下载安装 到官网下载jenkins.war包:http://jenkins-ci.org/.把下载下来的jenkins.war包放到文件夹下,如C:\jenkins,然后打开命令行窗口并进到该目录下,执行java -jar jenkins.war命令,当提示:“Jenkins is     fully up and running”时,表示启动成功,这时在浏览器窗口输入:http://localhost:8080/ 就可到jenkins的首页 二.修改Jenkins的根目录 默

Jenkins+Jmeter+Ant持续集成

前期准备: 1.Jdk1.6或以上:http://www.oracle.com/technetwork/java/javase/downloads/index.html 命令行输入:java -version,出现如下提示说明安装成功 2.ANT下载:http://ant.apache.org/bindownload.cgi.配置环境变量 命令行输入:ant -v,出现如下提示说明安装成功 3.Jmeter下载:http://jmeter.apache.org/download_jmeter.c

ant+jenkins+jmeter接口自动化

1.网址:https://www.cnblogs.com/ceshisanren/p/5639886.html 2.bulid.xml文件 <?xml version="1.0" encoding="UTF-8"?> -<project basedir="." default="run" name="ant-jmeter-test"> -<tstamp> <form