Jmeter 如果控制器带有 http 代码

381*_*172 4 jmeter

我想在我的 jmeter 负载测试中使用 if 控制器。测试是:

  1. 发帖并取回访问令牌。
  2. 使用该访问令牌获取下一个链接。

我的问题:

我有访问令牌并使用了 post-assertion->regular expression 提取器并从 http 响应中获取了访问令牌。但是现在我不知道如何使用 if 控件并仅在 http 响应代码为 200 时才要求它进行下一个测试。第二个问题是我是否仍然可以将访问令牌的正则表达式值传递到 if 循环的 http 标头管理器中?

附上我的 jmeter 的屏幕截图。在此处输入图片说明

Ali*_*lik 5

尝试使用响应断言来处理 Request_Access_Token 请求的状态(成功/失败),具体取决于返回的响应代码,然后将 IfController 与预定义的JMeterThread.last_sample_ok jmeter 变量一起使用- 无论最后一个样本是否正常 - 真/假。

架构将如下所示:

ThreadGroup
    Request_Access_Token
        Response Assertion
        Response Field to Test: Response Code
        Pattern Matching Rules: Equals
        Patterns to Test: 200
        Regex Extractor          // your Access_Token extractor
    IfController
    Condition: ${JMeterThread.last_sample_ok}   // will be TRUE if Response Assertion above is TRUE (i.e. response code = 200)
        HttpRequest
        // send extracted Access_Token along with request
        ...
Run Code Online (Sandbox Code Playgroud)