随笔 - 12  文章 - 0 评论 - 0 阅读 - 7833
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

 

假设管理员进行一个场景:为网站新增品牌,内容为品牌名:冬青及服务商名:兰禹,并验证是否新增成功

(注意:请在登录和将Token作为全局变量的前提下进行以下操作)

根据打开给的接口文档,我们获取到新增品牌接口,及列表品牌接口,以及品牌详情页接口

 打开APIFOX的自动化测试,新建测试用例,

 

找到提前写好的新增品牌接口导入进去

 

 点击自动生成代码,删除非必要关键字,保留"Name"和"MerchantId",

填入品牌名:冬青和品牌商兰禹的id:6,发送并保存

(注意:品牌商兰禹的id可从接口文档得出)

于是,我们就新增成功了

那么我们怎么验证这个新增是存在的呢

我们调用了品牌详情接口,但是,我们并不知道新建品牌的ID号,这可怎么办呢?

 于是我们调用了品牌列表接口,输入参数进行搜索,试图查询到想要的ID

 

 

 但是我们要的是最后一个ID号,目前开发请求参数并没有做搜索最后一个参数的设置,

当数据库的数据查过三十条,搜索就比较难了,可见这是行不通的

我们采用数据库进行查询操作,得知ID为54

 

于是我们通过详情接口传入ID为54的品牌号,得知现在新增商品的详情:品牌名:冬青及服务商名:兰禹

 

 

 

到这一步看起来已经完成任务了,但是呢

我们不想每次都是人眼去看响应详情以验证结果是否复合我们预期

那么,我们做了以下断言:

品牌名:冬青     服务商名:兰禹

 

 

验证成功!

但是呢?这样还是不够方便,并且有以下几个问题:

一:当我们的品牌商和品牌名有调整,我需要手动修改断言参数

二:我需要肉眼查看详情参数,才知道响应结果符不符合我的预期

三:新增的品牌ID号需要去数据库手动查询,依旧不能实现我们想偷懒的想法

我们利用删除接口,将刚才创建的品牌删除,重新来一次~

 

首先:我们才尝试使用变量实现,将新建的品牌名字和品牌商ID设为变量:

新建一个接口,在前置操作的自定义脚本里面设置环境变量:品牌名字和品牌商ID两个变量

 

 

 并将环境变量写入新建品牌接口的参数里面

 

 

于是当我点击发送时就新建了一个品牌

按照之前,在品牌详情接口输入从数据库里查到的最后一条数据的ID号,填入就可以看到新建品牌的详情了

这次在前置操作选择数据库操作,连接数据库进行操作

连接数据库,使用sql语句查询,提取变量id,

(注意:在APIFOX连接数据库的前提下,以及本机远程连接服务器为前提进行操作!)

(注意:SQL语句可先到数据库查询看是否起效;表达式可参考详情返回值或者提示例子,在排除错误是注意变量类型是否有误)

 

 

 

 将前置操作的ID提取到请求参数中,如下

 

 

为了自动化验证我们的响应数据符合预期,我们在后置操作里添加了断言脚本

验证通过

 

 

 

 

 

 最后,所有测试用例一起运行

 

posted on   小树~~  阅读(2136)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示