注:本文思想,用jenkins集成jmeter和ant
一、搭建jenkins
jenkins部署到tomcat服务上,需要的环境有JDK1.8、tomcat
1、安装jdk环境
jdk本文用的是1.8.0_121
jdk下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
把下载好的jdk-8u121-linux-x64.tar.gz 移动到/usr/java目录并解压(把文件传到centos上就不叙述了)
#mv jdk-8u121-linux-x64.tar.gz /usr/java
#tar -zxvf jdk-8u121-linux-x64.tar.gz
配置环境变量
vim /etc/profile
#在文件最后添加如下
JAVA_HOME=/usr/java/jdk1.8.0_121
JRE_HOME=/usr/java/jdk1.8.0_121/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
加载环境变量
#source /etc/profile
输入命令确定是否装好
#java -version 出现如下说明java环境配置成功
2、安装tomcat环境
注:tomcat最好为8的
tomcat下载地址:http://tomcat.apache.org/download-80.cgi
把下载好的apache-tomcat-8.5.13.tar.gz移到/opt目录下并解压
#mv apache-tomcat-8.5.13.tar.gz /opt
#tar -zxvf apache-tomcat-8.5.13.tar.gz
#mv apache-tomcat-8.5.13 tomcat
启动tomcat,如果能够看到tomcat的访问页就ok了
# cd /opt/tomcat/bin/
#./startup.sh
3、安装jenkins环境
Jenkins下载地址:https://jenkins.io/download/ (我这里选择的是war包,少了很多事)
把下载好的jenkins.war复制到/opt/tomcat/webapps/
# cp jenkins.war /opt/tomcat/webapps/
重新启动tomcat,他会自动加载jenkins
# cd /opt/tomcat/bin
#./shutdown.sh
#./startup.sh
后续工作:
1、创建账号,这里不再叙述
2、安装插件
进入系统管理-插件管理-可选插件
安装如下扩展插件:Ant
Plugin,直接安装即可
3、jenkins配置java、ant
进入系统管理-Global Tool Configuration
配置java
配置ant如图:
二、搭建ant环境
ant下载地址:http://ant.apache.org/bindownload.cgi(这里用的是1.9.9版本)
把下载好的apache-ant-1.9.9-bin.tar.gz复制到/opt目录下并解压
#tar -zxvf apache-ant-1.9.9-bin.tar.gz
重名为ant
#mv apache-ant-1.9.9-bin
ant
配置ant环境变量
#vim
/etc/profile
在java环境下面填写变量
ANT_HOME=/opt/ant
PATH=$ANT_HOME/bin
export ANT_HOME
PATH=$ANT_HOME/bin
export ANT_HOME
加载环境变量
#source /etc/profile
# 验证ant
#ant -version
三、搭建jmeter环境
jmeter下载地址:http://jmeter.apache.org/download_jmeter.cgi
把下载好的apache-jmeter-3.2.tgz复制到/opt/目录下并解压
#tar -zxvf apache-jmeter-3.2.tgz
配置jmeter环境变量
#vim /etc/profile
在文件最后填写变量
JMETER_HOME=/opt/apache-jmeter-3.2
export CLASSPATH=$JMETER/lib/ext/ApacheJMeter_core.jar:$JMETER/lib/jorphan.jar:$JMETER/lib/logkit-2.0.jar:$CLASSPATH
export PATH=$JMETER/bin/:$PATH
export CLASSPATH=$JMETER/lib/ext/ApacheJMeter_core.jar:$JMETER/lib/jorphan.jar:$JMETER/lib/logkit-2.0.jar:$CLASSPATH
export PATH=$JMETER/bin/:$PATH
三个环境变量如图:
加载环境变量
#source /etc/profile
重点:
1、把/opt/apache-jmeter-3.2/extras/下的ant-jmeter-1.1.1.jar复制到/opt/ant/lib下,否则会报错
2、把/opt/apache-jmeter-3.2/lib下的xalan*.jar和serializer*.jar
复制到/opt/ant/lib下,否则生产结果的是时间出不来
四、jenkins集成ant和jmeter
前期工作:
1、把做好的jmeter的脚本baidu.jmx复制到/opt/apache-jmeter-3.2/demo目录下(baidu.jmx是我的一个简单访问百度的脚本,把集成调通)
如图:
2、编辑build.xml,并把文件放到/opt/apache-jmeter-3.2/demo目录下(以后作为jenkins的工作目录)
<?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="/opt/apache-jmeter-3.2/" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="/opt/apache-jmeter-3.2/demo/report/jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="/opt/apache-jmeter-3.2/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="/opt/apache-jmeter-3.2/demo" includes="*.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" />
<!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
</project>
<project name="ant-jmeter-test" default="run" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="/opt/apache-jmeter-3.2/" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="/opt/apache-jmeter-3.2/demo/report/jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="/opt/apache-jmeter-3.2/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="/opt/apache-jmeter-3.2/demo" includes="*.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" />
<!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
</project>
以上的目录要根据实际的环境配置。
创建jenkins计划,进入http://localhost:8080/jenkins/
点击新建,填写名称test_jmeter,并保存
General、源码管理、构建触发器、构建环境都不用修改
构建选择invoke ant如图,
Ant Version选择ant
build file:/opt/apache-jmeter-3.2/demo/build.xml
点击保存,剩下的就是构建
构建成功后,左边有蓝色球:是成功,红色的球是失败,点击它查看结果
结尾:
以上是集成的整个过程,有些地方是省略的,重点都已经叙述,如果过程遇到什么问题,先百度报什么错,然后去找解决方法。
初次写博客,如果有问题请指正