如何从响应消息中获取特定值并将其分配给Jmeter中下一个请求中的另一个变量?

时间:2014-11-26 06:22:57

标签: android api jmeter chat performance-testing

我正在尝试通过将Jmeter用于移动聊天应用程序来进行性能测试。我正在尝试的方案是,需要在N个新用户注册过程中分析输出。我通过“CSV数据集配置”提供N个用户数据。在提到的变量名称为“phone,ime”。

对于每个新用户注册过程,应用程序将在调用API1时生成一次性密码。问题是,我需要从每个电话用户的API1响应消息中获取生成的一次性密码在调用API2 时将值赋给变量$ {code}。

以下是API&参数详情:

API1:/api/users/registration-sms.html? 1)姓名:电话,价值:$ {phone} 2)姓名:ime,价值:$ {ime} 示例: 请求 - POST数据:phone = 917010370002& IME = e78b56418b55b32c 响应:{"response":{"httpCode":200,"Message":"True","Code":"5858"}}

API2:/api/users/registration-sms-verfy.html? 1)姓名:电话,价值:$ {phone} 2)名称:代码,价值:$ {code} 注意:对于此变量$ {code},我们需要从相应电话(917010370002)的API1(“代码”:“5858”)响应消息中获取数据。

请为我提供可行的解决方案以解决我的要求。

提前致谢。

1 个答案:

答案 0 :(得分:1)

您可以使用常规提取器后处理器,

假设您的回答是

{"response":{"httpCode":200,"Message":"True","Code":"5858"}}

你的正则表达式会像提取代码值一样,但对于特定的手机,你不需要稍微修改一下,

"Code"\:"(\d+)"

对于出现详细信息,您可以提供哪个匹配号。你想要的。

参考Regular Expression Exctrator Post Processor