Jmeter:如何从第一个请求获取第一个userID并转移到第二个请求相同的userId?

问题描述 投票:0回答:1

我有一个包含两个HTTP请求的脚本

1第一个请求是User Authentication.include userId .....

2:第二个请求还包括userId。

这两个参数是一致的。

如何从第一个请求获取第一个userID并转移到第二个请求相同的userId?

我想从第一个请求获取userID,而不是从响应中获取,响应主体不包含userId,将相同的userId传递给第二个请求。

这是第一个请求正文:

[

   {"productId":"5551",
   "userId":"${__RandomString(32,44e00d674dee4ff7a2d4f0081991b6d40Bs9Hc)}",
   "service":"200008",
   "app_system":"7.1.1",
   "equipmentId":"866935038314977",
   "app_devicetype":"vivo X20A",
   "app_platform":"Android",
   "app_version":"3.1.3",
   "market":"icash_main"}
] 
jmeter
1个回答
2
投票

使用Extractors来共同处理您的请求和响应。

首先,您需要从第一个请求的响应中提取userID。

为此,请选择一个提取器(如果您的请求返回JSON响应,请使用JSON Extractor)并添加到您的第一个请求中。

其次,在使用提取器通过变量获取userId的值之后,您可以在后续请求中使用它。

编辑:

如果您想在两个请求中使用相同的userId,请在测试计划中使用User Defined Variables并在其中添加变量userID,如下所示:

enter image description here

在您的请求正文中使用userId的变量,如下所示:

{"productId":"5551",
   "userId":"${userId}",
   "service":"200008",
   "app_system":"7.1.1",
   "equipmentId":"866935038314977",
   "app_devicetype":"vivo X20A",
   "app_platform":"Android",
   "app_version":"3.1.3",
   "market":"icash_main"}

以下是使用相同userId的两个请求的请求主体

请求正文1:

enter image description here

请求2的正文:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.