JenKins+ANT+JMeter+SVN接口自动化环境部署

Jenkins+ant+jmeter+svn环境部署

一、Jenkins安装

具体安装过程见—Linux下安装JenKins环境部署.md文件

二、ant 安装

1、下载 ant安装包

从http://ant.apache.org 上下载tar.gz版ant

wget http://mirrors.cnnic.cn/apache//ant/binaries/apache-ant-1.9.14-bin.tar.gz
JenKins+ANT+JMeter+SVN接口自动化环境部署_第1张图片
image.png

2、解压

tar -vxzf apache-ant-1.9.14-bin.tar.gz -C /usr/local    解压

3、修改环境变量

vi /etc/profile

#ant env
export ANT_HOME=/usr/local/apache-ant-1.9.14
export PATH=$PATH:$ANT_HOME/bin

4、使配置生效

source /etc/profile         source命令 是配置的 环境变量生效

5、检查是否配置成功

ant -version

三、jmeter的安装

首先要保证Linux中安装了jdk

1、下载Jmeter

下载地址:http://jmeter.apache.org/download_jmeter.cgi

wget https://mirrors.tuna.tsinghua.edu.cn/apache//jmeter/binaries/apache-jmeter-5.1.1.zip
JenKins+ANT+JMeter+SVN接口自动化环境部署_第2张图片
image.png

[图片上传失败...(image-4b3b0c-1576120045849)]

2、传输到linux系统中,目录自己可以指定,

我放在 /usr/local 目录下

cp apache-jmeter-5.1.1.zip /usr/local/

3、解压

unzip apache-jmeter-5.1.1.zip

4、配置环境变量

vi /etc/profile
后面追加进行

#jmeter env
JMETER_HOME=/usr/local/apache-jmeter-5.1.1
PATH=$PATH:$JMETER_HOME/bin
CLASSPATH=.:$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH
export JMETER_HOME PATH CLASSPATH

5、source生效

source /etc/profile

6、检查是否配置成功

jmeter -v
image.png

四、ant与jmeter关联

1、建立了2个目录为了保存后续的html报告跟jtl报告的内容

mkdir -p /usr/local/apache-jmeter-5.1.1/smoke_report/html
mkdir -p /usr/local/apache-jmeter-5.1.1/smoke_report/jtl

Chmod 777 -R /usr/local/apache-jmeter-5.1.1/smoke_report
给这个目录添加权限(后续我在Jenkins运行过程中出现过,因为权限问题,无法生存测试报告)

Chmod 777 -R /usr/local/apache-jmeter-5.1.1/lib 
添加了目录权限,后续中出现过文件,log日志没有权限,导致Jenkins运行不成功

2、将jmeter目录下的extras目录下的ant-jmeter-1.1.1.jar文件复制到ant目录下的lib文件夹中

cp /usr/local/apache-jmeter-5.1.1/extras/ant-jmeter-1.1.1.jar /usr/local/apache-ant-1.9.14/lib/

3、下载测试报告模板

1、下载style文件:jmeter.results.shanhe.me.xsl

将jmeter-results-shanhe-me.xsl上传至jmeter安装目录的extras文件夹下

cp /home/zgp/jmeter.results.shanhe.me.xsl /usr/local/apache-jmeter-5.1.1/extras/

4、配置ant编译文件build.xml

将build.xml放至jmeter目录下

cp /usr/local/apache-jmeter-5.1.1/extras/build.xml /usr/local/apache-jmeter-5.1.1

修改build.xml文件

vi build.xml



































force="true"
in="{jmeter.result.htmlName}"
style="{report.datestamp}"/>






切记:如果用Jenkins工具通过svn下载的jmx脚本文件位置不一致,这里需要修改



*

5、jmeter/bin/properities文件

修改jmeter安装目录下的jmeter/bin/properities文件,修改jmeter.save.saveservice.output_format=xml

vi /usr/local/apache-jmeter-5.1.1/bin/jmeter.properties

6、调试ant配置jmeter是否成功

  • 1,脚本已经编写好,并且运行没有错误

  • 2,脚本已经发到到指定的目录里面

    cp login.jmx /var/lib/jenkins/workspace/checkout_svn_data/request_auto/
    
  • 3,ant run(检查构建是否成功)

JenKins+ANT+JMeter+SVN接口自动化环境部署_第3张图片
image.png
  • 4、生成的html报告
JenKins+ANT+JMeter+SVN接口自动化环境部署_第4张图片
image.png

五、Jenkins配置

1、配置环境变量

Jenkins中-系统配置-全局工具配置

配置jdk

JenKins+ANT+JMeter+SVN接口自动化环境部署_第5张图片
image.png
查看linux系统java路径
Echo $java_home
或者which java

[root@192 bin]# which java
/usr/bin/java

在后续跑Jenkins脚本中 发现多了一个bin跟java,把环境变量中的bin/java给删除了(我linux系统 默认安装了java)

2、配置 ant

JenKins+ANT+JMeter+SVN接口自动化环境部署_第6张图片
image.png

/usr/local/apache-ant-1.9.14 目录为大家linux服务中 ant路径位置

3,添加2个插件 系统配置-插件中(完成后重启Jenkins工具)

JenKins+ANT+JMeter+SVN接口自动化环境部署_第7张图片
image.png

4、Jenkins中添加一个自由风项目

JenKins+ANT+JMeter+SVN接口自动化环境部署_第8张图片
image.png

5、丢弃旧的构建

JenKins+ANT+JMeter+SVN接口自动化环境部署_第9张图片
image.png

6、源码管理

JenKins+ANT+JMeter+SVN接口自动化环境部署_第10张图片
image.png

代码下载路径为 /var/lib/jenkins/workspace/jmeter_ant_jenkins/checkout_svn_data

7、构建触发器

JenKins+ANT+JMeter+SVN接口自动化环境部署_第11张图片
image.png

10 15 * * * 每天下午15点 10分运行一次

8、构建 ant

JenKins+ANT+JMeter+SVN接口自动化环境部署_第12张图片
image.png

9、构建HTML报告

JenKins+ANT+JMeter+SVN接口自动化环境部署_第13张图片
image.png

10、构建jtl报告

JenKins+ANT+JMeter+SVN接口自动化环境部署_第14张图片
image.png

11、看构建成功的结果

JenKins+ANT+JMeter+SVN接口自动化环境部署_第15张图片
image.png

六、如果Jenkins需要root执行权限

1、修改Jenkins配置文件

# 打开配置文件
vim /etc/sysconfig/jenkins
# 修改$JENKINS_USER,并去掉当前行注释
$JENKINS_USER="root"

2、修改Jenkins相关文件夹用户权限

chown -R root:root /var/lib/jenkins
chown -R root:root /var/cache/jenkins
chown -R root:root /var/log/jenkins

3、重启Jenkins服务并检查运行Jenkins的用户是否已经切换为root

# 重启Jenkins(若是其他方式安装的jenkins则重启方式略不同)
service jenkins restart
# 查看Jenkins进程所属用户
ps -ef | grep jenkins
# 若显示为root用户,则表示修改完成

七、Jenkins performance插件生成性能测试报告

把Jenkins部署好了,但是用了之后发现performance插件有问题,如果按下面这样设置统计所有的jtl文件,会导致文件夹过于臃肿,于是,而且生成的Performance Trend 比较混乱,不是很直观,于是思考修改一下

JenKins+ANT+JMeter+SVN接口自动化环境部署_第16张图片
4249725225-5c98d88b22aef_articlex.png

试验了一下发现如果多次构建后生成在同一个jtl文件里,解析出的Performance Trend是正确的,但是我原本的设置中,jtl文件名是精确到分钟的,需要修改成精确到天的,这样正好一天的结果能看的很直观。
修改不是很难,总共修改3个地方即可
1.build.xml文件中的时间戳精度
原来是这样的,,jtl和html用的是同一个时间变量,咱们需要把这两个分开来

JenKins+ANT+JMeter+SVN接口自动化环境部署_第17张图片
image.png

修改后如下,也就是多建立一个精确到天的时间变量

JenKins+ANT+JMeter+SVN接口自动化环境部署_第18张图片
image.png

1、插件安装

系统管理---->插件管理----->可选插件----->搜索Zentimestamp

安装即可

2、插件使用

系统管理---->系统设置---->全局属性

image.png

时间格式根据自已的需要设定。

3、Job特例时间戳的设置

打开对应的job 我们可以发现多了一个选项:

JenKins+ANT+JMeter+SVN接口自动化环境部署_第19张图片
image.png

当我们不勾选此选项时将采用系统设置里设置的格式。如果勾选此选项将会优先采用Job中的时间戳格式。

注意:

1.如果时间戳的格式填写不正确,将会导致Job的构建失败。

2.变量名不是BUILD_ID 而是BUILD_TIMESTAMP 在我们想使用的地方直接$BUILD_TIMESTAMP 即可

4、修改任务中performance插件的jtl路径,使用新的时间变量

JenKins+ANT+JMeter+SVN接口自动化环境部署_第20张图片
image.png

5、设置好了,运行看一下

你可能感兴趣的:(JenKins+ANT+JMeter+SVN接口自动化环境部署)