在接口测试中,避免不了接口间的依赖测试。比如A、B两个接口,B接口的入参值需要用到A接口的返回值。最笨的方法是先执行A接口,复制A接口的返回数据,然后粘贴到B接口的入参处,再执行B接口。当然实际工作中我们不会采用这种方式,因为效率太低。那么使用Jmeter做接口测试,如何实现依赖接口的测试呢?下面我们一起来学习下。
需求背景:有两个接口,加油卡充值接口和加油卡消费接口,加油卡消费接口中的入参userId的值需要用到加油卡充值接口的返回值。所以我们需要把加油卡充值接口中返回的userId值提取出来,然后供加油卡消费接口使用。
我们需要把响应结果中的userId的值56168808提取出来。
从响应结果中提取变量的四种方法:
方法一、边界提取器
操作步骤:
1、鼠标右键线程组“加油卡项目”,依次选择添加->后置处理器->边界提取器:
2、设置边界提取器各属性
通过上面配置的边界提取器,然后执行加油卡充值接口就可以把加油卡充值接口响应结果中的userId值56168808这串数字取到了。
如果我们想检测下是否成功取到56168808这串数字,可以添加一个调试取样器来查看:
在调试取样器界面不需改动任何属性值(如果想显示更明确,可以自定义名称)。
然后切换到察看结果树界面(如果有其它结果点击扫把按钮先把其它结果清除),点击绿色横三角启动按钮:
3、加油卡消费接口入参引用提取的userId的值。
先启用加油卡消费接口,然后通过${变量名}方式取值作为入参userId的值。
4、执行启动,查看结果。
至此,使用边界提取器操作完成。
二、json提取器
操作步骤:
1、先把边界提取器禁用,然后添加JSON提取器,如下图:
2、设置JSON提取器各属性。
3、把加油卡消费接口禁用,然后执行加油卡充值接口。
4、启用加油卡消费接口,然后通过${变量名}方式取值作为入参userId的值。
至此,使用JSON提取器操作完成。
三、正则表达式提取器
操作步骤:
1、先把JSON提取器禁用,然后添加正则表达式提取器,如下图:
2、设置正则表达式提取器各属性。
3、先禁用加油卡消费接口,然后执行启动加油卡充值接口,查看取值是否成功。
4、启用加油卡消费接口,引用变量,然后执行测试。
至此,使用正则表达式提取器操作完成。
四、BeanShell后置处理程序
由于这种方式需要一定的编码基础(Java语言),且前面三种方法对于提取值已够用,这种方式目前暂不学习。