【发布时间】:2020-10-03 13:02:55
【问题描述】:
有没有办法让所有 Receive 采样器忽略 JMeter 中的特定响应并等待我们感兴趣的响应?
更准确地说,我们创建了一个 jmx 文件,其中包含用户在浏览器上创建的大型流程。每个发送的请求后面都有一个响应,因此我们使用请求处理程序,然后为每个调用使用相应的接收处理程序。一切似乎都很好。 但是在某些情况下,可能会到达另一种响应,这不是我们在流程中所期望的,而是由另一种独立机制触发的。您可以将其视为发送给正在执行流程的用户的通知,并且独立于流程本身,但它们是在通道中接收的(对于我们来说,在 websocket 连接中)。
因此,我们试图找到一种方法来忽略在我们运行测试时可能出现的一组特定响应。
我们首先尝试在每个接收采样器中添加一个 While 控制器,以检查内容是否为所需类型,如果不是则再次循环。但是这个解决方案有 3 个缺点:
- 我们必须为特定接收添加两次采样器 - 一次在 while 元素之前,一次在元素内,因为我们必须首先提取接收到的数据,并且在执行 while 条件检查之前 while 不执行其内容
- 我们的 jmeter 测试脚本中有太多的发送-接收对,我们必须在脚本中添加太多的 while 控制器
- 由于收到的消息可能不是我们期望的类型,而是另一个我们想忽略的类型,所以我们不能添加响应断言,因为如果通知到达它将失败,所以我们必须间接验证内容 ->在while循环的条件下
我们使用 apache-jmeter-5.3。
所以我们想知道是否可以进行另一种配置来避免所有这些 while 循环。
这可能与解决方案无关,但我们通过“Peter Doornbosch 的 WebSocket Samplers”使用 websocket。
谢谢
【问题讨论】:
标签: websocket jmeter jmeter-plugins