-1

场景是:1000个用户同时注册。

现在,如果“View results in a Tree”中的响应消息为“1”,则注册成功,但如果响应消息“3”,则请求失败。

我想知道如何在 Beanshell 后处理器中处理这个问题。

或者

是否有可能获得所有注册结果的 csv?

4

3 回答 3

2

就像是:

String response = new String(data);

if (response.equals("3")) {
    prev.setSuccessful(false);
}

在哪里:

  • data- 是保存父采样器响应的 Java字节数组
  • prev- 是SampleResult类的实例,提供对父采样器方法和字段的读/写访问

更多信息 -如何使用 BeanShell:JMeter 最喜欢的内置组件


注意:使用Response Assertion而不是 Beanshell PostProcessor会更快更容易

于 2016-07-29T13:24:45.543 回答
0

当你说回应时,你是什么意思。

你可以这样做:

  • 添加响应断言并使用包含,为代码“1”所在的位置填写正则表达式。在所有其他情况下,您将失败

另一种方法:

  • 使用正则表达式提取器提取响应“代码”
  • 使用 jsr223 断言 + groovy,并测试变量提取值
于 2016-07-29T13:19:54.863 回答
0

那么,为什么你需要一个 beanshell 呢?您可以使用正则表达式提取要验证的“响应位”,并通过使用默认 javascript 选项将响应位与预期值进行比较来使用 if 控制器。在以下示例中,我从先前的响应中提取一个单词并使用 if 控制器做出决定在此处输入图像描述

于 2016-07-29T16:22:44.497 回答