软件测试软件测试软件测试之路

jmeter之有依赖关系的接口处理

2019-07-04  本文已影响0人  小啊小狼

1、场景:在接口功能测试或者进行压力测试的时候,我们经常要将多个流程串联起来才能将程序整个流程测试通过,中间会出现后面接口的请求要用到前面接口的返回值的问题,下面我们登录状态校验为例,介绍一种处理此种情景的方法。

2、处理方法,添加‘正则表达式提取器’,将上一个接口返回的token从返回报文中识别出来并用参数接收,然后在用到此参数作为请求参数的时候直接使用。

    例:一般的应用户首先要登录,获得我登录的凭证(token),之后请求其他的资源的时候需要带上这个凭证,服务器才能识别你为合法的用户并正确的返回结果。

步骤:

    1、在返回需要数据的接口后面添加正则表达式提取器

    2、正确填写正则表达式提取器信息

        引用名称:以后请求需要引用此变量时的变量名

        正则表达式:提取你想要内容的正则表达式,小括号(.+?)表示提取,也就是说对于你想要提取的内容需要用它括起来;小括号左右两边严格填写要提取的数据左右两边,保证通过匹配左右两边的值,可以正确提取到所需要的数据。

       例如有一段返回【onwhitelist","inviteCode":"80065AODJD","updateMobileTag":"1","token":"97c54f8e-b83f-42cf-a326-9cea201754f5","accessToken":"97c54f8e-b83f-42cf-a326-9cea201754f5"】,想要提取token的值97c54f8e-b83f-42cf-a326-9cea201754f5,正则表达式的写法就是 "token":"(.+?)",

        模板:使用提取到的第几个值。因为可能有多个值匹配,所以要使用模板。从1开始匹配,依次类推。这里          只有一个,所以填写 $1$ 即可;

        匹配数字表示如何取值。0代表随机取值,1 代表全部取值。这里只有一个,填 1 即可;

        缺省值表示参数没有取到值的话,默认给它的值。一般不填。

    3、添加Debug Sampler,运行后来检查取值是否正确(Sampler--Debug Sampler)

    4、在后续接口中使用提取到的信息,实现预想功能

至此处理完成。

上一篇下一篇

猜你喜欢

热点阅读