处理器 JMeter:预处理器和后处理器

处理器用于修改其范围内的采样器。

有两种类型的处理器:

  1. 预处理器
  2. 后处理器

预处理器

预处理器执行一些操作 before 提出采样器请求。

考虑一个简单的例子:假设你想要 JMeter 通过被测网站进行“爬取”, 解析 链接(检查页面上的所有链接)和 回报 HTML。您可以在创建 HTTP 请求之前向控制器添加一些操作,例如“HTML 链接解析器”。

预处理器

后处理器

后处理器在发出采样器请求后执行一些操作。

考虑一个简单的例子: JMeter 向被测 Web 服务器发送 HTTP 请求(等等 www.google.com)并获取响应。你想要 JMeter 如果服务器响应错误,则停止测试。您可以使用后处理器执行上述任务,如下所示:

后处理器

后处理器示例

本教程将逐步向您展示如何使用后处理器 JMeter.让我们从简单的测试脚本开始。

  1. JMeter 向被测 Web 服务器发送 HTTP 请求 www.google.com.
  2. JMeter 收到 Google 服务器的响应。
  3. 如果服务器响应 一个错误, JMeter 将 停止 考试。
  4. 如果服务器响应 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” 到路径字段。

配置 HTTP 请求

当您输入 “ 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 个线程完成。

运行测试

故障排除

如果您在运行上述场景时遇到问题……请执行以下操作:

  1. 检查您是否通过代理连接到互联网。如果是,请删除代理。
  2. 打开Jmeter的一个新实例
  3. 打开 处理器测试计划.jmx 在Jmeter中
  4. Double-单击线程组->查看结果树
  5. 运行测试