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

时间:2021-02-17 17:22:10

所需工具

一、jmeter 工具下载 https://jmeter.apache.org/  配置环境JDK等及各种插件可以看小七之前的教程

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

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 同级目录下

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

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

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

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

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

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

3、验证ant

输入 ant

显示如下 即安装成功

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

也可以查看版本号

输入 ant -version

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

4、ant使用

1、配置xml文件
Jmeter目录位置:G:\Tools\apache-jmeter-4.0\apache-jmeter-4.0,在jmeter中建立demo\report文件夹,demo中创建build.xml文件,需要配置Jmeter目录、生成报告的路径,报告的格式和脚本目录,内容如下:
  
Jenkins + Jmeter +Ant自动化集成环境搭建(一)

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

 <?xml version="1.0" encoding="UTF-8"?>

 <project name="ant-jmeter-test" default="run" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="G:\Tools\apache-jmeter-4.0\apache-jmeter-4.0" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="G:\Tools\apache-jmeter-4.0\apache-jmeter-4.0\demo\report\jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="G:\Tools\apache-jmeter-4.0\apache-jmeter-4.0\demo\report\html" />
<!-- 生成的报告的前缀-->
<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="run">
<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="G:\Tools\apache-jmeter-4.0\apache-jmeter-4.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-report_21.xsl">
<!-- 这里有个坑,网上的教程里面 不要copy了就不当回事, 需要在\apache-jmeter-4.0\extras 目录下找到对应的执行文件 -->
<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>
</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. Jenkins + Jmeter +Ant自动化集成环境搭建(一)
  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. Jenkins + Jmeter +Ant自动化集成环境搭建(一)
    2. 拷贝到Jenkins + Jmeter +Ant自动化集成环境搭建(一)
  4. 在\apache-jmeter-4.0\apache-jmeter-4.0\extras目录下打开CMDER,运行"ant.bat -file build.xml -Dtest=Test" (2019-09-26更新:直接执行ant即可。无须执行这么长了). 查看\apache-jmeter-4.0\extras目录下是否出现Test.jtl、Test.html文件,若有,则构建成功会显示 BUILD SUCCESSFUL。PS:Test.jmx是默认存在的Sample脚本文件。
  5. Jenkins + Jmeter +Ant自动化集成环境搭建(一)

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

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

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

打开cmder 执行ant run

执行成功

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

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

三、Jenkins 部署

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

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

安装成功之后,

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

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

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

访问 http://localhost:8080

安装成功

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

2、安装 Jenkins

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

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

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

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

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

运行 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 需要做一些配置

第一步、 不多做解释了,中文大家都懂,点击“继续”进入下一步

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

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

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

安装插件ing.........

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

第三步、安装完成后创建用户

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

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

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

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

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

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

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

提前下载好插件:

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

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

1)  配置中 添加 Jmeter插件:Performance plugin、HTML Publisher plugin

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

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

功能:用来执行Ant

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

1)

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

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

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

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

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

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

3)选择高级

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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