压力测试-录制脚本

HTTP代理服务器

性能测试多个接口时,尤其是压测某个场景(包含多个接口),如果一个一个添加HTTP请求,指定接口路径和参数,是个麻烦的事情,也有遗漏接口的可能。

Jmeter支持代理服务器和badboy工具两种方式录制接口,这里介绍前者。(截图是mac下jmeter,和windows界面可能有些许不同)

1.测试计划处(注意,不是线程组 或 请求)添加→非测试元件→HTTP代理服务器。

 

2.输入代理服务器的端口号,使用前可以查看端口号是否已经被占用了。mac使用 lsof -i tcp:8088 ,windows使用 netstat -aon | findstr "8088"。如果没有被占用,执行命令后终端没有任何输出。

目标控制器 选择 录制的接口存放的位置,可以是线程组,也可以是线程组下的某个控制器。

 

如果没有设置过滤条件,默认会录下所有接口,包括 .js .css .gif这些静态资源文件的接口。过滤模式可以选择 包含模式 和 排除模式,根据接口名称匹配,支持正则。如:只要xxxx接口请求则在包含模式添加 .*/xxxx-.* 

 

3.配置好HTTP代理服务器后,还需要配置浏览器,让浏览器的请求都走代理服务器。

使用之前越权测试时安装的SwitchOmega配置代理。新建一个情景模式,端口号与HTTP代理服务器中一致,然后使用该代理。

       

 

4.访问页面,可以发现该页面调用的所有请求都录制下来。如果这些接口只使用这一次,则不需要修改任何参数。如果要在之后的测试计划中重复使用,可以复制之前线程组中的 用户定义的变量、cookie管理器、HTTP信息头管理器,将这些参数替换为 变量。

posted @ 2020-03-02 17:49  cywhat  阅读(582)  评论(0编辑  收藏  举报