原文链接(格式看着比较好):https://mp.weixin.qq.com/s/B2woSvx_FwBfTdQXjqdvPQ
有谱修行 (ID:gzh-ypxx) 分享互联网技术干货,视频教程,实用可行的育儿干货,关注我一起成长吧!
录制脚本有以下三种方式:
一:使用原生的HTTP代理服务器
二:使用第三方软件badboy录制
三:通过Fiddler抓包导出Jmeter脚本
01-原生的HTTP代理服务器JMeter脚本(.jmx)为xml格式,树形结构,由元件组成,使用取样器产生请求,主要采用HTTP代理服务器。
1)创建模板
工作台---非测试元件---HTTP代理服务器,默认端口8080(可自行修改)
目标控制器:录制的脚本存放的位置,可选择项为测试计划中的线程组(根据实际来选择)
2)设置代理
打开IE/Firefox,不要关闭Jmeter
FireFox:点击工具(Tool) → 选项(Internet Options) → 高级(advanced) → NetWork(网络) → 设置(Settings)
输入IP和端口号,勾选上【为所有协议使用相同代理 (Use this proxy server for all protocols)】
IE:工具 →Internet选项 → 连接 →局域网设置
3)录制脚本
- 打开浏览器,在地址栏输入网址,然后回车
- 在被测网站上点击操作
-
返回Jmeter查看脚本
4)验证脚本
录制完之后,在测试计划之前我们需要对脚本进行验证,先保存测试计划,然后右键Thread Group选择Validate
检查结果树,看请求返回是否都ok
注意:
最好设置包含模式及排除模式,若不设置,在录制完之后,可以把不需要的.css .jpg的行删掉。标准的包含模式及排除模式如下所列,使用正则表达式匹配
i. .* - all
ii. .*.png – png images
iii. .*.gif – gif images
iv. .*.jpg – jpeg images
v. .*.php
vi. .*.jsp
vii. .*.html
viii. .*.htm
ix. .*.js
02-第三方软件badboy录制
软件下载地址:http://www.badboy.com.au/ 通过badboy来录制,录制后另存为jmx格式即可
Badboy就是一个浏览器模拟工具,具有录制和回放的功能,还可以进行调试;
操作步骤:
a、打开badboy软件,默认打开是Recording状态,即录制状态,如果要停止录制点击工具栏红色圆圈按钮;
b、在地址栏输入被测项目地址,按回车;
c、badboy就开始录制了,录制好之后保存:File--》Export to Jmeter..
d、启动JMeter,文件--》打开,导入脚本;
e、检查每一个HTTP请求;
1.1.1、在badboy录制中添加断言
如: 在搜索出来的结果页面中选中搜索框内的文本,选择Tools--》Add Assertion for Selection
1.1.2、回放通过
注意:badboy脚本里设置好的东西(比如参数化、检查点)是不会带到jmeter里的,只能录制基本的东西,导入到jmeter里还需要重新调试。
03-通过Fiddler抓包导出脚本
操作如下:
第一步:下载插件,下载地址:http://pan.baidu.com/s/1mi7O2ow 提取:vexv
第二步:插件下载完后,将下载的文件放到Fiddler的ImportExport对应的目录下,如下图:
第三步:打开Fiddler抓取请求(可进行过滤)
- 勾选“UseFilters”
- 在下面的下拉框中选择“Show only the following Hosts”,并在输入框中填入Hosts名称,如*.baidu.com;
- 在Requests Headers中勾选“Hide if URL contains”,填入.css .js .gif .png .jpg .swf 用以过滤css/js/图片等类型请求
- 根据需要,可在下面“Respons Status Code”中勾选“Hide non-2xx”用以过滤非2xx返回码(即失败)的请求
- 最后点击右上角Actions -> Run Filterset Now,开始运行Filer过滤
第四步:设置请求的Comments(选中请求 按大写的M键)
第五步:File---Export Sessions---Selectd Sessions,选中对应的Jmeter格式保存。
第六步:导入到JMeter稍作修改执行后续测试。
注意:导出的jmeter脚本是不包含Thread Group的,需要自己创建Thread Group,然后在运行脚本查看结果进行分析。
回复关键词【jmeter】获取视频教程
虽说录制简单,但后期的脚本调试会遇到很多麻烦
既然玩jmeter就不要太依赖于录制了,况且jmeter本身对录制的支持不是特别好,还会产生很多无关的请求数据,导入Jmeter后还需要手工去筛选。