在测试过程中,遇到一个问题:用户登录成功后服务器会返回一个登录凭证,之后所有的操作都需要带上此凭证。我们怎么获取登录凭证并传递给后续的操作?
Jmeter提供了正则表达式提取器,用变量提取参数,后续通过${变量名}引用参数。
1 添加一个登录的http请求。运行。得到响应数据,如图所示。
登录凭证是"Message":"凭证"。
2 在登录的http请求上点击右键》添加》后置处理器》正则表达式提取器
3 正则表达式提取器编辑页面。[dinghanhua]
引用名称:参数名 后续引用格式${参数名}
正则表达式:参考第一步的响应数据 "Message":"(.*?)"
(如果正则表达式里取多个值,比如:"RetMsg":"(.*?)","Message":"(.*?)"。取参格式${参数名_g1},${参数名_g2})
模板:$n$ 正则表达式里取多个参数,模板指定取第几个
匹配数字:0随机,-1所有,1第一个匹配的值,2第二个匹配的值。。。
缺省值:如果没有匹配项 参数值取缺省值
4 引用。在后续的请求中使用该凭证。
the end!