接口测试 dapi 基于 Django 的轻量级测试平台三 接口关联

此生不换 · 2019年10月03日 · 最后由 此生不换 回复于 2021年01月16日 · 1366 次阅读

GitHub:https://github.com/yjlch1016/dapi
QQ 群:529063263
我的博客:https://www.cnblogs.com/yjlch1016/

第 1 个帖子:https://testerhome.com/topics/20582
第 2 个帖子:https://testerhome.com/topics/20601
第 4 个帖子:https://testerhome.com/topics/20931
第 5 个帖子:https://testerhome.com/topics/21126
第 6 个帖子:https://testerhome.com/topics/21082
第 7 个帖子:https://testerhome.com/topics/21141
第 8 个帖子:https://testerhome.com/topics/22294

一、接口关联思路:
在接口测试中,
很多场景下,
上一个接口的出参要作为下一个接口的入参,
即上一个接口的响应结果中的值要作为下一个接口的请求数据,
在 JMeter 里面,
这叫做关联。
看了网上的开源项目,
有的花了很大篇幅介绍测试报告等,
但是那些都是辅助模块,
不是重点,
接口测试的重点是怎么组织测试用例(基本流、备选流),
没有讲清楚怎么做接口关联。
有些是把需要传参的接口先执行一遍,
然后再传递给后面的接口,
这样做会造成接口重复执行,
不算是很友好的解决方案。
之前我的想法是单独再建一张一对多的表,
用于存放提取的数据,
但是那样做会造成数据的冗余。
现在的做法是先 re.findall(正则表达式模板, 某个接口的实际结果) 提取出来,
作为全局变量,
然后再 replace(old, new) 把正则表达式提取的值替换进去。

二、页面配置:

1、在需要向后传参的接口里面开启正则表达式提取器(默认不开启),
输入变量名(随便取),
输入正则表达式((.+?) 表示匹配小括号里面的数据,小括号左右都不为空或者空格);


2、在需要动态入参的接口里面输入 ${变量名},这跟 JMeter 里面的设置方法是一样样儿的。

三、查看传参是否成功:

可以看到响应代码与实际结果都是对的,说明这个参数的值传递成功了!

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册