首页 > 解决方案 > 当服务不可用时,如何在 JMeter 中测试 http 请求

问题描述

我正在尝试测试一个 http 请求,但该服务不可用,有没有办法在 JMeter 中创建一个虚拟响应?这样做的目的是测试实际发送的请求

但是,建议使用虚拟采样器,如果其他测试人员没有此插件,则他们将无法对其进行测试。是否有其他已经内置的采样器或工具可以使用?

标签: httptestingservicejmeterrequest

解决方案


不会发送请求,因为您需要在通过网络发送任何数据之前建立底层TCP 连接。

如果您想测试服务器关闭的事实,您可以定义连接和响应超时,设置位于HTTP 请求采样器的“高级”选项卡下(甚至更好的HTTP 请求默认值

在此处输入图像描述

上述配置将“告诉”JMeter 尝试建立连接,如果 1 秒内没有响应 - 采样器将被标记为失败:

在此处输入图像描述

如果这是您期望的行为,您可以将 JMeter 配置为接受此响应,方法是添加一个响应断言作为请求的子项并将其配置为:

  • 测试领​​域:Response Code
  • 模式匹配规则:Equals
  • 要测试的模式:Non HTTP response code: org.apache.http.conn.ConnectTimeoutException
  • 勾选Ignore Status

在此处输入图像描述

这样 JMeter 会将超时请求视为成功:

在此处输入图像描述


推荐阅读