jmeter+jenkins+ant自动化集成

Posted wing-小小翅膀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jmeter+jenkins+ant自动化集成相关的知识,希望对你有一定的参考价值。

一、jmeter 工具下载 https://jmeter.apache.org/  

二、Ant安装(http://ant.apache.org/) 安装Ant是为了后续在Jenkins中封装、构建、执行需要用到

1
2
3
4
5
6
7
8
9
10
Apache Ant™
Apache Ant是一个Java库和命令行工具,其任务是将构建文件中描述的进程作为相互依赖的目标和扩展点。Ant的主要用途是构建Java应用程序。Ant提供了许多内置任务,允许编译,组装,测试和运行Java应用程序。Ant还可以有效地用于构建非Java应用程序,例如C或C ++应用程序。更一般地说,Ant可以用来试验任何类型的过程,可以用目标和任务来描述。
 
Ant是用Java编写的。Ant的用户可以开发自己的包含Ant任务和类型的“antlibs”,并提供大量现成的商业或开源“antlibs”。
 
Ant非常灵活,并且不会将编码约定或目录布局强加给采用它作为构建工具的Java项目。
 
寻找结合构建工具和依赖管理的解决方案的软件开发项目可以将Ant与Apache Ivy结合使用。
 
Apache Ant项目是Apache Software Foundation的一部分。

  

三、Jenkins安装 https://jenkins.io/(部署在tomcat)

 


 一、jmeter安装略

 二、Ant安装

选择  二进制分布 下载

1、下载 apache-ant-1.9.11-bin.tar.gz  目录位置随意 笔者是放在tomcat 同级目录下

 

 

 

2、配置环境变量

window中设置ant环境变量:

ANT_HOME   E:\\tool\\apache-ant-1.9.11-bin\\apache-ant-1.9.11

path             E:\\tool\\apache-ant-1.9.11-bin\\apache-ant-1.9.11\\bin

classpath      E:\\tool\\apache-ant-1.9.11-bin\\apache-ant-1.9.11\\lib

 

3、验证ant

输入 ant

显示如下 即安装成功     

也可以查看版本号

输入 ant -version

4、ant使用

     

1、配置xml文件
Jmeter目录位置:G:\\Tools\\apache-jmeter-4.0\\apache-jmeter-4.0,在jmeter中建立demo\\report文件夹,demo中创建build.xml文件,需要配置Jmeter目录、生成报告的路径,报告的格式和脚本目录,内容如下:
  

 

 build.xml文件

 

复制代码
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 
 3 <project name="ant-jmeter-test" default="run" basedir=".">
 4     <tstamp>
 5         <format property="time" pattern="yyyyMMddhhmm" />
 6     </tstamp>
 7     <!-- 需要改成自己本地的 Jmeter 目录-->  
 8     <property name="jmeter.home" value="G:\\Tools\\apache-jmeter-4.0\\apache-jmeter-4.0" />
 9     <!-- jmeter生成jtl格式的结果报告的路径--> 
10     <property name="jmeter.result.jtl.dir" value="G:\\Tools\\apache-jmeter-4.0\\apache-jmeter-4.0\\demo\\report\\jtl" />
11     <!-- jmeter生成html格式的结果报告的路径-->
12     <property name="jmeter.result.html.dir" value="G:\\Tools\\apache-jmeter-4.0\\apache-jmeter-4.0\\demo\\report\\html" />
13     <!-- 生成的报告的前缀-->  
14     <property name="ReportName" value="TestReport" />
15     <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" />
16     <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}${time}.html" />
17     
18     <target name="run">
19         <antcall target="test" />
20         <antcall target="report" />
21     </target>
22     
23     <target name="test">
24         <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
25         <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
26              <!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本-->
27             <testplans dir="G:\\Tools\\apache-jmeter-4.0\\apache-jmeter-4.0\\demo" includes="*.jmx" />
28             <property name="jmeter.save.saveservice.output_format" value="xml"/>
29         </jmeter>
30     </target>
31     
32     <path id="xslt.classpath">
33         <fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
34         <fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
35     </path> 
36     
37     <target name="report">
38         <tstamp><format property="report.datestamp" pattern="yyyy/MM/dd HH:mm"/></tstamp>
39         <xslt 
40               classpathref="xslt.classpath"
41               force="true"
42               in="${jmeter.result.jtlName}"
43               out="${jmeter.result.htmlName}"
44               style="${jmeter.home}/extras/jmeter-results-report_21.xsl">
45               <!-- 这里有个坑,网上的教程里面 不要copy了就不当回事, 需要在\\apache-jmeter-4.0\\extras 目录下找到对应的执行文件 --> 
46               <param name="dateReport" expression="${report.datestamp}"/>
47         </xslt>
48                 <!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 --> 
49         <copy todir="${jmeter.result.html.dir}">
50             <fileset dir="${jmeter.home}/extras">
51                 <include name="collapse.png" />
52                 <include name="expand.png" />
53             </fileset>
54         </copy>
55     </target>
56 </project>
复制代码

 

 

 

 

 

 

 

2、将jmeter测试脚本放入demo目录下,当然放入其他位置也可以,build.xml中需要配置jmeter脚本存放路径的对应位置。

 

2、ant构建运行Jmeter,并且生成jtl、Html报告

  1. jmeter默认保存的是.csv格式的文件,所以我们先要设置一下bin/jmeter.properties文件内容,修改jmeter.properties文件 jmeter.save.saveservice.output_format=xml;
    1.  

  2.   也可以在NON-GUI模式执行的时候 命令执行保存为xml    :G:\\Tools\\apache-jmeter-4.0\\apache-jmeter-4.0\\bin\\jmeter.bat -n -r -t test.jmx -l test.xml -e -o test
  3. 将G:\\Tools\\apache-jmeter-4.0\\apache-jmeter-4.0\\extras\\ant-jmeter-1.1.1.jar拷贝到E:\\tool\\apache-ant-1.9.11-bin\\apache-ant-1.9.11\\lib目录下;
    1.  

    2. 拷贝到

       

  4. 在\\apache-jmeter-4.0\\apache-jmeter-4.0\\extras目录下打开CMDER,运行"ant.bat -file build.xml -Dtest=Test" . 查看\\apache-jmeter-4.0\\extras目录下是否出现Test.jtl、Test.html文件,若有,则构建成功会显示 BUILD SUCCESSFUL。PS:Test.jmx是默认存在的Sample脚本文件。
  5. 如果这里报错,那么试试\\apache-jmeter-4.0\\apache-jmeter-4.0\\demo,执行命令ant,如果OK,那配置是没有问题
  6.  

     

3、验证配置,执行构建测试
  将之前jmeter的脚本保存, 并将build.xml配置文件放在与测试脚本相同的目录下

 

 

打开cmder 执行ant run

执行成功

 

 

 

 

 

三、Jenkins 部署

Jenkins 是基于 Java 开发的一种持续集成工具,所以,Jenkins 需要 Java 环境,所以请自行安装好jdk

1、安装 tomcat
tomcat 是真对 Java 的一个开源中间件服务器(容器),基于 Java Web 的项目需要借助 tomcat 才能
运行起来。
tomcat 官方网站:http://tomcat.apache.org/ 

安装成功之后,

 

PS:通常将需要运行有应用放到 webapps/目录下

进入 bin/目录下,双击 startup.bat 来启动 tomcat 服务器

访问 http://localhost:8080

安装成功

2、安装 Jenkins

Jenkins 官方网站:http://jenkins-ci.org/ 

找到对应系统所对应的 Jenkins 版本,下载安装

双击安装,步骤这里就不一一截图了.安装的时候 如下图,目录放到tomcat的webapps中

 

 

运行 Jenkins
进行 tomcat 的 bin/目录下启动 startup.bat ,通过浏览器访问:http://localhost:8080/ 
ps:请勿在启动tomcat未关闭时启动Jenkins,否则会导致端口冲突

如果想要满足同时看到tomcat界面与jenkins界面

可执行下面操作

改变端口执行:
java -jar jenkins.war --httpPort=$HTTP_PORT, 例如java -jar jenkins.war --httpPort=6060          也可在可在..\\Jenkins\\jenkins.xml中修改默认端口
启动成功;

后打开浏览器,输入http:/localhost:6060,即可看到jenkins的页面


 

首次进入Jenkins 需要做一些配置

第一步、 C:\\Users\\Administrator\\.jenkins\\secrets找到initialAdminPassword文件,然后复制密码登陆jenkins

第二步、选择安装所需插件,刚开始玩可以选择左侧的推荐插件..

第三步、安装完成后创建用户,在系统管理-全局安全配置,点击应用后可以跳转到注册界面

如果没有跳转到注册界面,那么点击注销,界面会有一个创建新账号的按钮

如果没有创建新账号按钮,那么找到jenkins 的主目录下有个config.xml文件,删除

authorizationStrategy或是securityRealm

 

 

 

 

各项设置成功之后 即可看到Jenkins的页面.下面就可以创建任务了

PS:插件功能可以用来后续拓展功能使用,目前的环境搭建可以不需要安装插件

 

1. jenkin 相关插件介绍与配置

提前下载好插件:

系统管理- 管理插件- 可选插件

下载所需的插件,例如:Performance plugin、HTML Publisher plugin、Ant Plugin 等

1)  配置中 添加 Jmeter插件:Performance plugin、HTML Publisher plugin(暂时不用)

     功能:用来展示jmeter执行结果

2)  配置中 添加 Ant插件:Ant Plugin

功能:用来执行Ant

 

 

2、新建一个任务,构建一个自由风格的软甲项目

 

1)

2)选择构建触发器---增加构建步骤---INVOKE ANT

Targets 应该填什么?查看build.xml文件   查看 default="run" 这个参数。根据ant的build.xml中的default= ()来填

 

 

 

 

 3)选择高级

4) Build File :此处输入的是build.xml文件的位置

 

 

3、配置之后保存,回到工作台 点击右侧的执行按钮  ,左侧会出现 执行状态

 构建历史中科院查看构建过的任务

控制台输出中查看执行的日志信息

在本地输出的状态报告中可以查看到新生成报告

 

 

 4、集成环境已经搭建完成,也可以设置一个定时任务 执行自动化集成

构建触发器:选择此项目构建的触发条件,例如本项目的是为了实现接口的定时监控,于是选择Build periodically(定期构建)。

注意:关于定期构建参数的说明:"* * * * *",总共有5个参数,分别代表分(0~59)、时(0~23)、天(1~31)、月(1~12)、周(0~7,0和7表示星期天);

 

以上是关于jmeter+jenkins+ant自动化集成的主要内容,如果未能解决你的问题,请参考以下文章

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

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

jmeter+jenkins+ant自动化集成

ant +jmeter+jenkins接口自动化测试二

持续集成:jmeter+ant+jenkins搭建接口自动化测试环境

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