mac jmeter+jenkins实现接口自动化测试

一、接口测试方案选型

        预研最常用的几款性能测试工具,loadrunner不支持mac先排除,jmeter能够支持录制、传参、压力测试、输出报告等基本功能,还有各种强大功能没有使用过,小安然判断支持将来项目的性能测试肯定是够用的了,因此接口测试工具选择了jmeter。

        jmeter测试报告原本以为必须用ant等工具去编译才能生成,傻乎乎的装了ant编译出报告后再去用jenkins发邮件时,才发现jmeter3.0之后已经优化过报告这一块,一条命令就能生成html报告,而jenkins的插件Performance Plugin生成的性能测试报告更加丰富,总之实现起来都很简单,工具非常成熟,OK动手实现吧。


二、jmeter的安装与使用

安装一句命令就可以搞定:brew install jmeter

启动命令:open /usr/local/bin/jmeter


三、jmeter一键录制

主要注意jmeter中添加代理服务器以及在网络或浏览器设置使用代理服务器。

1.工作台右键,添加http代理服务器;

2.注意此处端口对应后面步骤网络或浏览器设置代理的端口号,设置好后必须点击启动按钮,否则使用此代理端口的网络请求会不通;

3.建议设置下请求过滤,不录制图片js等无需关注的请求;

排除模式设置为(?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|woff|woff2)

4.设置网络或浏览器代理

        小安然不想限制使用某个浏览器来录制,直接配置网络代理。

        具体步骤为,mac上点击网络图标,选择打开网络偏好设置——高级——代理,勾上网页代理,代理服务器写本机IP,端口写前面步骤jmeter中设置的端口号,点“好”按钮保存设置。

        此时http的网络请求都会被自动录制到jmeter中了,录制完成后关闭代理服务器,自行编辑即可。

jmeter脚本执行命令:

jmeter -n -t /usr/local/Cellar/ant/1.10.5/bin/aibot.jmx -l aibot.jtl -e -o output

(此命令执行前必须保证不存在jtl文件,否则命令会报错)


四、jmeter持续集成

jenkins中安装两个插件Performance Plugin、Performance Publisher plugin,

Jenkins任务按下图配置,即可自动进行接口测试生成测试报告。

测试结果:



——踩到一个坑记录下:

jenkins生成的HTML Report网页使用了css,权限问题导致生成的报告会显示成空报告,解决方法为在jenkins系统管理中输入以下脚本运行:System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")

千万注意:万恶的jenkins重启之后就会失效啊失效啊失效。。。。。。。。。。。。。。

写到这个坑,突然觉得这个问题应该有办法彻底解决的吧,需要去研究下jenkins权限相关。

你可能感兴趣的:(mac jmeter+jenkins实现接口自动化测试)