一、添加录制元件
点击“测试计划”右键,添加“非测试元件”
二、设置录制元件参数
1、配置录制元件参数
配置端口号,这个随意设置,只要端口不冲突
配置目标控制器,选择Test Plan > Thread Group,选择后它决定抓取的接口保存在线程组之下。
这里有几个关键点说明一下:
- Target Controller:这里指定录制出的脚本需要放在什么位置。如果你想把不同的脚本放到不同的线程组中去,在录制的时候就可以拆分开。
- Grouping:分组,这个分组功能很实用。但是如何分组就和具体的目标相关了,这一点下面我们再细说。
2、配置浏览器代理
打开firefox,在代理中设置代理,以及端口号,务必与录制元件参数保持一致
3、配置接口过滤
- 接口需要包含的内容
- 比如,此例中录制的脚本,只需要包含baidu的接口
- 接口需要排除的内容
- 排除模式中点击添加 .*\.(js|css|PNG|jpg|ico|png|gif|jpeg|JPEG).* ,排除加载的js,css样式等,只保留必要的接口。
三、录制脚本
1、安装证书
点击开启录制,安装证书。
需要注意:
点击 start 按钮时,会提示创建一个根 CA 证书。这个证书生成在 bin 目录中,文件名是:ApacheJMeterTemporaryRootCA.crt,七天有效期。这个证书将被用来客户端转发 HTTPS 的请求。与此同时,还有另一个证书在同目录中生成,名字是 proxyserver.jks,这是 JMeter 自己生成的根证书。
2、录制脚本
在浏览器中,点击页面,jmeter截取相关接口,并展示在控制台
3、脚本分组
Grouping选项定义如下:
选项 | 描述 |
Do not group samples | 不分组。默认选择次项目,若按默认选项,就相当于没有事务的概念,每个请求都会单独统计 TPS 和响应时间信息。 |
Add separators between groups | 在组间添加分隔。它的作用也是只有一个:就为了好看! |
Put each group in a new controller | 每个组放一个新的控制器。这是一个 Simple Controller,它的作用也是只有一个:就为了好看! |
Put each group in a new transaction controller | 将每个组放入一个新的事务控制器中。Transaction Controller 和 Simple Controller 的区别就是 Transaction Controller 会做为事务统计脚本执行的时间,而 Simple controller 不会。 |
Store 1st sampler for each group only | 只存储每个组的第一个样本。从 HTML 文件获取所有内含的资源和自动重定向将开启。也就是说,虽说只记录了一个 Sampler,但是资源也会下载,重定向也会开启。 |
- Do not group samples
- 不分组。默认选择次项目,若按默认选项,就相当于没有事务的概念,每个请求都会单独统计 TPS 和响应时间信息。
- Add separators between groups
- 在组间添加分隔。它的作用也是只有一个:就为了好看!
- Put each group in a new controller
- 每个组放一个新的控制器。这是一个 Simple Controller,它的作用也是只有一个:就为了好看!
- Put each group in a new transaction controller
- 将每个组放入一个新的事务控制器中。Transaction Controller 和 Simple Controller 的区别就是 Transaction Controller 会做为事务统计脚本执行的时间,而 Simple controller 不会。
- 事务控制器(Transaction Controller)
- 注意: Transaction Controller 会做为事务统计脚本执行的时间,如上图所示。