jmeter接口自动化测试环境部署(ant+jmeter+jenkins+svn+钉钉) |
您所在的位置:网站首页 › jmeter部署 › jmeter接口自动化测试环境部署(ant+jmeter+jenkins+svn+钉钉) |
jmeter接口自动化测试环境部署
注意:以下内容适应用于公司测试团队小,同时技术不足以开发或者不愿意投入时间精力开发接口自动化测试平台的测试团队。同时本文章内容是使用docker技术实现搭建,当然如果公司没有使用docker技术的也适用。将docker镜像看作是一台服务器即可。但是docker并不是虚拟机。他只是服务器中的一个进程。请读者不要混淆。 另外需要该文章pdf版本的读者可在百度网盘下载 链接:https://pan.baidu.com/s/1N7lkkh29YZgPB4RJF8Ywvg 密码:rked 一、概述 jmeter是做API和性能测试的一把利器。也是接口自动化测试的一种非常棒的一款开源的测试软件。本次接口自动化的环境搭建主要围绕着jmeter展开。主要用到的工具/应用程序有:jmeter+ant+apache/tomcat+jenkins+DingDing+SVN。搭建自动化测试环境的时候注意,无论是任何的框架或者说是架构都是围绕着简单、易用、功能强大三个特点来开展的。所以我们要做的就是尽可能能的减少重复性的操作。让使用者能够节省时间的同时尽可能的保证该架构的稳定性。 结构图如下: 二、环境准备环境搭建 (一)Linux docker环境搭建 1、centos安装docker 如果linux环境中安装了yum工具包那么直接使用yum install docker便可以直接安装了,在安装过程中如果询问直接‘y’就好 使用docker --version可以查看当前的docker版本 4、下载linux镜像文件 5、搜索镜像 搜索ssh镜像文件docker search ssh 3)进入docker镜像内执行sh命令 “docker exec -it jmeterTest bash”,如果此时发现主机名称变成了12位的字符便成功了,不过你会发现字符是你启动docker镜像的时候返回给你的前12位字符 2、将jmeter压缩包上传到服务器。 (四)、安装ANT 1、下载ANT 地址:https://ant.apache.org/bindownload.cgi (五)、安装svn 执行命令:yum install subversion安装完成后svn --version查看当前svn版本
注意:这里个modle的脚本文件名称用${caseName}代替了 (四)DINGDING文件 因为整个自动化结构都是由钉钉通知的所以首先要对钉钉消息进行模版化。在新建模版化json文件之前,我们需要先在DingDing上创建一个群,并在群内开启一个钉钉机器人,新建一个json文件内容如下: 注意:这里个modle的脚本文件名称用${caseName}代替了 (五)、文件上传 将jmeter脚本名称与ANT编译文件名称改为一致的文件名称例如:demo.xml、demo.jmx。改完名称后将jmeter脚本上传到jmeterCase文件夹下case文件夹。 3、检出jmeterCase目录
(二)、发送钉钉消息sh 内容如下: #定义jmeter自动化home文件夹 home=/var/www if [ ! -f ${home}/jmeterCase/case/"$1".xml ]; then sh -x ${home}/bin/createAntXML.sh $1 fi #更新html报告文件夹 svn up ${home}/html/ #更新用例文件夹 svn up ${home}/jmeterCase/ #调用ant执行jmeter脚本并生成报告 ant -f ${home}/jmeterCase/case/$1.xml #创建随机变量文件名 random=${RANDOM} #遍历report目录下以参数$1开头的文件并排序,将内容吧写入到随机文件 ls -t ${home}/html/report | grep $1 >>${home}/html/report/${random}.txt #读取随机文件的第一行文本 file=$(head -1 $home/html/report/${random}.txt) #删除随机文件 rm -rf ${home}/html/report/${random}.txt #删除钉钉消息文件 rm -rf ${home}/DingDing/$1.json #复制消息文件 cp ${home}/DingDing/msg.json ${home}/DingDing/$1.json #替换url sed -i -e 's/${html}/'${file}'/g' ${home}/DingDing/$1.json #替换消息标题 sed -i -e 's/jmeter编译成功/【'$1'】jmeter脚本编译成功,点击查阅:http:\/\/111.230.223.145\/report\/'$file'/g' ${home}/DingDing/$1.json #读取json文件 json=$(head -n 100 ${home}/DingDing/$1.json) #发送钉钉消息 if [ $(grep -c "class=\"failure\"" ${home}/html/report/${file}) -eq 1 ]; then curl https://oapi.dingtalk.com/robot/send?access_token=992debb70f5fe66037383d5e7635e99cdc1608957affc6c4256127b500526c5a -H 'Content-Type: application/json' -H "Data_Type:msg" -X POST -d "${json}" fi注意:最后发送钉钉消息时将之前创建的DingDing机器人的token换成自己的“access_token” 五、jenkins配置 新建一个job |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |