您当前的位置:首页 > 攻略教程 > 软件教程 > jmeter如何使用关联动态获取服务器返回的值

jmeter如何使用关联动态获取服务器返回的值

来源:互联网 |  时间:2024-10-21 01:34:06

jmeter进行性能测时,向服务器发送的数据中,有的参数值是取的服务器动态返回的数据。这时候就可以用关联的方法,动态获取服务器返回的值。后置处理器就是JMeter的关联组件,可以帮助我们从服务器响应数据中找到我们需要的数据,在本例中以登录功

jmeter进行性能测时,向服务器发送的数据中,有的参数值是取的服务器动态返回的数据。这时候就可以用关联的方法,动态获取服务器返回的值。后置处理器就是JMeter的关联组件,可以帮助我们从服务器响应数据中找到我们需要的数据,在本例中以登录功能为例,使用正则表达式为例来获取登录功能的session值。

1、使用登录功能的脚本,在Jmeter中加载脚本。我们可以找到登录的链接地址,如下图可以看到,登录时提交的参数中包含userSession,username、password等信息。可以看到userSession是一连串不规则字符串,一般情况下此参数值为服务器动态返回的数值,每次登录都会变;

jmeter如何使用关联动态获取服务器返回的值

2、执行一遍脚本,可以在查看结果树中查找参数userSession。首先查找含有该参数的url,含该参数的链接会显示红框。然后我们可以看到登录前的链接的Response Body返回了userSession的值。

jmeter如何使用关联动态获取服务器返回的值

3、接下来我们就可以用正则表达式提取器来从服务器返回的值中获取该参数的值。右键->添加->后置处理器->正则表达式处理器,在nav.pl下添加一个正则表达式提取器。

jmeter如何使用关联动态获取服务器返回的值

4、在查看结果树中,左侧选择RegExp Tester可以打开正则表达式测试器。

我们要从“<input type=hidden name=userSession value=137948.492264075HAQfHcfpfHAiDDDDtcfHtpDfDtcf>”响应数据中获得“userSession value=”后面字符串的值。则正则表达式为“<input type=hidden name=userSession value=(.*)>”我们可以把此表达式在测试中进行测试。可以看到如下图,正确匹配出了数据。

jmeter如何使用关联动态获取服务器返回的值

5、打开步骤5添加的正则表达式提取器。填写相关字段的值。如下图所示。

jmeter如何使用关联动态获取服务器返回的值

6、接下来,我们就把通过正则表达式获取的字段值赋给登录url。

jmeter如何使用关联动态获取服务器返回的值

7、我们运行脚本,可以看到正确获取了数据。

jmeter如何使用关联动态获取服务器返回的值

关于我们 | 联系我们 | 人才招聘 | 免责声明

黔ICP备2023011638号-1

本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件给3239592717@qq.com