处理器 JMeter:预处理器和后处理器
处理器用于修改其范围内的采样器。
有两种类型的处理器:
- 预处理器
- 后处理器
预处理器
预处理器执行一些操作 before 提出采样器请求。
考虑一个简单的例子:假设你想要 JMeter 通过被测网站进行“爬取”, 解析 链接(检查页面上的所有链接)和 回报 HTML。您可以在创建 HTTP 请求之前向控制器添加一些操作,例如“HTML 链接解析器”。
后处理器
后处理器在发出采样器请求后执行一些操作。
考虑一个简单的例子: JMeter 向被测 Web 服务器发送 HTTP 请求(等等 www.google.com)并获取响应。你想要 JMeter 如果服务器响应错误,则停止测试。您可以使用后处理器执行上述任务,如下所示:
后处理器示例
本教程将逐步向您展示如何使用后处理器 JMeter.让我们从简单的测试脚本开始。
- JMeter 向被测 Web 服务器发送 HTTP 请求 www.google.com.
- JMeter 收到 Google 服务器的响应。
- 如果服务器响应 一个错误, JMeter 将 停止 考试。
- 如果服务器响应 OK (没有错误), JMeter 将 继续 考试。
这里是 路线图 本例中:
前提:
We 再利用 文章中的步骤 1 和步骤 2 JMeter 性能测试.
步骤1)添加线程组
上点右键 测试计划 并添加一个新的线程组: 添加 -> 主题(用户) -> 线程组
但是在线程组控制面板中,输入线程属性如下:
此设置允许 JMeter 创建信息图 10 用户请求 http://www.google.com 10 倍。
步骤2)添加 JMeter 分子
- 添加 HTTP 请求默认值
- 添加 HTTP 请求
我们仍然 JMeter 发送请求 http://www.google.com 到 Google 服务器。
步骤 3)添加后处理器元素
右击 线程组 -> 添加 -> 后处理器 -> 结果状态操作处理程序
结果状态操作处理程序 如果用户请求失败,允许用户停止线程或整个测试。
在结果状态操作处理窗格中,选择 立即停止测试. 如果出现以下情况,此选项将停止测试 JMeter 从服务器响应中获取错误。
步骤 4)配置 HTTP 请求
打开 HTTP 请求面板。输入 “ abc” 到路径字段。
当您输入 “ abc” 到路径, JMeter 将向 Google 服务器创建一个 URL 请求:http://www.google.com/abc。此 URL 在 Google 服务器上不存在。它是 错 URL 请求因此 Google 服务器将返回错误。
步骤 5)添加查看结果树
右击 线程组 -> 添加 -> 倾听者 -> 查看结果树
步骤 6)运行测试
选择查看结果树,按菜单栏上的运行按钮。您将看到 错误 Google 服务器响应,测试将停止 没有 完成100个线程。
现在回到第 4 步,打开 HTTP 请求窗格,输入“日历”到窗格。这使得 JMeter 创建 URL 请求 https://calendar.google.com/calendar/u/0/r 到 Google 服务器。这是 正确 URL 请求因此 Google 服务器将返回 OK(无错误)。
选择查看结果树,按菜单栏上的运行按钮。您将看到 OK 来自 Google 服务器的响应,并且测试将持续,直到所有 100 个线程完成。
故障排除
如果您在运行上述场景时遇到问题……请执行以下操作:
- 检查您是否通过代理连接到互联网。如果是,请删除代理。
- 打开Jmeter的一个新实例
- 打开 处理器测试计划.jmx 在Jmeter中
- Double-单击线程组->查看结果树
- 运行测试