使用JMeter进行负载测试时,我试图在一秒钟内发送1000个请求。问题是我需要发送从之前每次登录获取的访问令牌。这样做时我收到以下错误:
java.net.URISyntaxException:索引67处路径中的非法字符:https://greenback-api.com/api/subscribers/getSavings/ $ {USER_ID}?access_token = $ {AUTH_TOKEN}
在低负载下典型的JMETER将变量转换为有效的url likeo是没有问题的:
api.com/api/subscribers/getSavings/4?access_token=443hrr4938rh9ghreughughtrugtrgt4
即使在高负载下,有没有办法强制JMETER在发出get请求之前呈现url变量?
答案 0 :(得分:1)
有时看起来有时${USER_ID}
和${AUTH_TOKEN}
不会被登录返回(或任何设置它们)。因此,JMeter将按原样使用表达式${...}
。并且字符{}
确实对URI无效(它们必须被编码)。
另一个选择是${USER_ID}
或${AUTH_TOKEN}
确实包含一些对URI无效且需要编码的字符。
所以你可能需要
${AUTH_TOKEN}
(可能还有${USER_ID}
)${USER_ID}
或${AUTH_TOKEN}
的任何其他操作)进行更严格的检查,以确保在未返回值时,他们不会继续执行以下操作。 / LI>
醇>