前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >接口测试平台代码实现130: 全局变量-9

接口测试平台代码实现130: 全局变量-9

作者头像
我去热饭
发布2022-05-19 10:03:01
2550
发布2022-05-19 10:03:01
举报
文章被收录于专栏:测试开发干货

本文开始,全局变量 要正式进入 复杂的后台实现了,当然如果能跟到这里,那么也应该没什么难度。

这里还是要重申一下,代码出现问题请先仔细比对教程源码

本节课我们先实现 在 接口库接口弹层来进行下手,在下手之前我们先要想好几个设计上的问题:

  1. 全局变量应用在哪些地方?

答:接口库接口调试,异常测试,登陆态接口,用例库具体接口步骤 这几处。

2. 全局变量怎么在上述地方去插入应用?

答:应用插入,需要使用特殊标记的占位符,所有区域应统一风格。但因用例库中多接口直接的返回值插入功能 和 本功能 类似,所以风格必须区分,否则进行替换特殊占位符的时候,遇到同名变量,就不知道该去替换的是前一个接口的返回值还是全局变量了。那么我们将要 对其 插入的特殊标记占位符做出一个合理的设计。

因为用例库的接口返回值占位符用的是:#变量名#

所以全局变量在所有模块的占位符就用: ~变量名~

这里小伙伴可以自行设计,有更好的提议可以跟我说,一经采用,红包奉上。

3. 具体实现的数据流?

答:拿接口库接口调试来举例,前端P_apis.html 把带有~变量名~全局变量的用户请求体,后台views.py中 对其进行了整理和实际发送(如果是用例库则还要去run_case.py中) 我们在请求体获取后,实际发送之前,进行替换全局变量的过程,具体步骤就是先验证当前项目的生效的 几个变量组,然后把其中的json数据拿出来用updata方式组成一个,然后用正则方式从 host/url/请求头/请求体中 找到要替换的字段名,也就是变量名。然后去json中拿到对应的值,找不到就直接返回给前端报错信息即可。

这个替换过程可能会很麻烦。所以我们 最好组件化,写一个公共的替换方法,把 host/url/请求头/请求体中 扔进去,然后给你返回 替换后的。虽然这个方法比较复杂,但是只要写的很好很稳定和健壮,考虑好容错性等因素,注释写好,那么后面会非常省心。

好,设计上暂时就先水到这里了,牛b的同学已经开始自己尝试实现了。下节课我们会按部就班的实现了哦~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-03-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试开发干货 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档