Centos7.x jmeter + ant + jenkins接口自动化框架部署
一、基础环境准备
1.jmeter安装(之前文章有介绍过)
2.ant安装
· 官网下载:https://ant.apache.org/bindownload.cgi
· 上传服务器,执行 tar -zxvf 你的包名.tar.gz 进行解压
· 配置环境变量 执行 vim /etc/profile
· 在最后面加上
export ANT_HOME=你的实际安装目录
export PATH=$PATH:$ANT_HOME/bin
· 执行 source /etc/proifle 立刻将配置生效
· 执行 ant -version 测试ant是否生效
3.ant配置jmeter
· 将jmeter extras目录下的ant-jmeter-1.1.1.jar文件拷贝到ant安装目录下的lib文件夹中
· 配置ant编译文件build.xml(如下图)
· 配置jmeter.propertise文档
找到jmeter.properties文档,在jmeter/bin目录下,打开该文档并编辑,修改jmeter报告输出格式为xml
改jmeter.save.saveservice.output_format=csv 为jmeter.save.saveservice.output_format=xml,并去掉前面的注释符号#
· 验证配置
将之前的jmeter的脚本保存,并将build.xml配置文件放在与测试脚本相同的目录下
· 执行测试
cd到build.xml文件所在目录,输入ant run回车,执行测试
· 查看测试报告
· 打开html文档,测试结果展现了执行的用例名称、成功率、用例执行时间等结果参数
4.jenkins配置
· 配置JDK
· 配置ANT
· General配置
· 构建配置
· 构建后操作
· 执行后结果
二、补充部分(实现查看发送最新测试报告)
1.下载 Build Timestamp Plugin 插件
Pattern:yyyy-MM-dd HH:mm:ss z
Name:自己随便定义
Pattern:yyyyMMddhhmm
2.在线预览配置
Index page[s]:需要与报告格式保持一致(详见下图示例)
3.邮件附件配置
Attachments:需要与报告格式保持一致
三、遇到的问题
问题1:通过ant执行生成报告时报错Character reference "&#
原因:因为API返回的报文里还有特殊字符&#
解决:
修改 jmeter.properties
jmeter.save.saveservice.response_data=false
jmeter.save.saveservice.response_data.on_error=false
问题2:生成html报告显示样式问题
解决:
在系统管理里找到脚本命令行
执行 System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")