对于一些JMeter初学者来说,录制脚本可能是最容易掌握的技能之一。虽然我不建议录制性能脚本(因为录制的脚本比较混乱,必须要通过二次处理才可正常使用),但有时做总比不做要好,是吧?下面我们详细介绍使用JMeter录制脚本的方法(也可以参考上篇《使用Fiddler录制Jmeter性能测试脚本》)。
运行环境为Windows 10,JMeter版本为3.3。
我们还是以访问百度首页,并完成一次搜索为例。
1. 配置JMeter
JMeter录制脚本原理是配置一个HTTP代理,然后浏览器通过这个代理访问测试页面从而完成脚本录制。
1.1 打开JMeter,并新增一个线程组(选中“测试计划”,右键选择“添加” -> “Threads (Users)” -> “线程组”)
1.2 添加“HTTP代理服务器”
选中“工作台”,右键选择“添加” -> "非测试元件" -> "HTTP代理服务器"
1.3 配置HTTP代理服务器
1) 打开新增的HTTP代理服务器,修改目标控制器为”测试计划 > 线程组“
2) 修改分组为“每个组放入一个新的控制器”
3) 还根据需要可以修改代理端口号(默认8888)等配置
4) 选择“Requests Filtering”,在“包含模式”中填入“.+(baidu\.com).+”用以过滤非baidu.com的请求
5) 同时在“排除模式”中填入“(?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|woff|woff2|htm|html).”用以过滤js、图片、html等资源文件请求
6) 最后点击“启动”按钮启动HTTP代理
2. 录制脚本
2.1 配置代理
打开IE浏览器,点击右上方工具按钮,依次选择“Internet选项” -> “连接” -> “局域网设置” -> “代理服务器”,勾选“为LAN使用代理服务器”,输入本地IP地址127.0.0.1及端口号8888,点击确定保存。
2.2 访问页面
使用IE浏览器打开百度首页https://www.baidu.com/,并进行一次搜索(如搜索lovesoo);若页面提示“此网站的安全证书存在问题”,点击“继续浏览此网站(不推荐) ”即可。
3. 脚本处理
现在我们打开JMeter查看我们刚才录制的脚本,可以看到JMeter录制了整个流程的请求,包括开始的搜索建议,访问首页请求,获取搜索历史及搜索等请求:
此时,我们需要对这些HTTP请求做一些删除操作,只保留访问首页及搜索的请求:
然后,我们添加“查看结果树”及“聚合报告”,点击运行即可查询相应的搜索结果:
最后,我们还可以对接口进行响应的参数化及断言,用以校验HTTP请求返回值是否正确:
4. 脚本下载
本次示例脚本上传到了百度网盘,以供大家参考,下载链接: https://pan.baidu.com/s/1c2i0Ola 密码: wy4y