JMETER - 使用代理录制脚本

添加测试脚本录制器(version 5.2.1)

添加: TestPlan->Add->Non-Test Elements->HTTP(s) Test Script Recorder

测试脚本录制器参数说明


Port:HTTP(S) 测试脚本记录器侦听的端口。 8888是默认值。 和浏览器代理设置端口号一致
HTTPS Domains


Target Controller:目标控制器,代理将存储生成的样本的控制器。默认情况下,它将寻找一个记录控制器并将它们存储在那里。
Grouping: 是否对来自单个“点击”的请求(接收到的请求没有明显的时间间隔)进行分组,以及如何在记录中表示该分组

  • Do not group samplers:不对采样器进行分组 - 按顺序存储所有记录的采样器,无需任何分组
  • Add separators between groups : 在组之间添加分隔符- 添加一个名为“ -------------- ”的控制器以在组之间创建视觉分隔。否则,采样器都按顺序存储。
  • Put each group in a new controller:将每个组放入一个新控制器中- 为每个组创建一个新的Simple Controller,并将该组的所有采样器存储在其中
  • Store 1 st sampler of each grup only:仅存储每组的第一个采样器- 仅记录每组中的第一个请求
  • Put each group in a new transaction controller:将每个组放入一个新的事务控制器中- 为每个组创建一个新的事务控制器,并将该组的所有采样器存储在其中

Capture HTTP Headers: 是否应该将标题添加到计划中?如果指定,将向每个 HTTP 采样器添加一个标头管理器
Add Assertions: 为每个采样器添加一个空白断言?
Regex Matching: 替换变量时使用正则表达式匹配?


HTTP Sampler setting


Prefix/Transaction name: 在录制过程中为采样器名称添加前缀(前缀模式)。或用用户选择的名称(Transaction name)替换采样器名称
Create new transaction after request (ms): 请求后创建新事务(毫秒),两个请求之间的不活动时间需要在两个单独的组中考虑它们。
Recording's default encoding: 录制的默认编码
Retrieve all Embedded Resources: 检索所有嵌入式资源,在生成的采样器中设置检索所有嵌入式资源?
Redirect Automatically: 自动重定向,在生成的采样器中自动设置重定向?
Follow Redirects: 跟随重定向,在生成的采样器中设置跟随重定向?
Use Keep-Alive: 保持连接
Type: 要生成哪种类型的采样器(HTTPClient 默认或 Java)


HTTPS 录制和证书


1、HTTPS 连接使用证书来验证浏览器和 Web 服务器之间的连接。通过 HTTPS 连接时,服务器将证书提供给浏览器。为了验证证书,浏览器会检查服务器证书是否由证书颁发机构 (CA) 签名,该证书颁发机构 (CA) 链接到其内置的根 CA 之一
2、浏览器还会检查证书是否适用于正确的主机或域,以及它是否有效且未过期
3、JMeter 将生成自己的证书。这些是使用属性proxy.cert.validity定义的有效期、默认 7 天和随机密码生成的

为 HTTPS 录制安装 JMeter CA 证书


1、JMeter 可以为每个服务器生成证书。为了顺利进行,JMeter 使用的根 CA 签名证书需要被浏览器信任。
2、第一次启动记录器时,它会在必要时生成证书。根 CA 证书将导出到当前启动目录中名为ApacheJMeterTemporaryRootCA的文件中。设置证书后,JMeter 将显示一个包含当前证书详细信息的对话框。
启动 Recorder 后显示的弹出窗口是一个信息性弹出窗口:

在 Firefox 中安装证书


1、点击设置->搜索证书->点击查看证书

2、点击导入->选择ApacheJMeterTemporaryRootCA.crt导入->选择信任该网站,证书安装成功

为 Firefox 中设置代理


1、右上角点击设置->搜索代理->点击设置->勾选手动配置代理

2、重启浏览器设置成功

开启录制


点击Start开启录制

录制成功

设置过滤不需要的url


证书过期重新安装证书


一般生成的有效期为7天

1、需要删除bin目录下的三个文件ApacheJMeterTemporaryRootCA.crt、proxyserver.jks、ApacheJMeterTemporaryRootCA.usr(这个在文件中没找到删除上面两个可以)

2、删除成功后在代理录制页面直接点击开始会自动生成CA证书

posted @ 2020-12-15 21:20  萧兮易  阅读(295)  评论(0编辑  收藏  举报