如何在当前脚本中使用包含控制器调用.jmx生成的变量?

时间:2019-02-07 06:16:35

标签: jmeter

在每个API请求中,我都使用authtoken,该令牌是在API服务运行之前生成的。我已经创建了用于身份验证的脚本,并通过使用带有变量名“ authToken”的JSON XTRACTOR提取了该令牌,并保存了文件Token.jmx。现在,我想通过使用include控制器在当前脚本中使用此Token.jmx文件,以便在运行实际的API之前,令牌应生成并传递此令牌存储在authToken中,以供进一步的API请求。

以下是我的情况: 线程组 -> OncleOnlyController     -> IncludeController(调用外部Token.jmx(具有一个authToken变量)) SimpleController -> APIService1(https://127.0.01:4444?authtoken= $ {authToken)}) -> APIService2(https://127.0.01:4444?authtoken= $ {authToken)})

有没有办法做到这一点?如何通过包含控制器调用文件中的变量?

1 个答案:

答案 0 :(得分:1)

检查jmeter.log file并确保它没有以下语句:

WARN o.a.j.c.IncludeController: No Test Fragment was found in included Test Plan, returning empty HashTree

如果有,请确保您的Token.jmx文件已定义Test Fragment,否则将不执行任何操作。包含控制器文件所引用的所有JMeter变量通常都可以使用,并且可以通过${authToken}

访问。