四、API 测试怎么做

如何应对复杂场景的 API 测试?

测试场景一:被测业务操作是由多个 API 调用协作完成

背景:一个单一的前端操作可能会触发后端一系列的 API 调用,此时 API 的测试用例就不再是简单的单个 API 调用,而是一系列 API 的调用。

存在情况:

(1)存在后一个 API 需要使用前一个 API 返回结果的情况。

(2)需要根据前一个 API 的返回结果决定后面应该调用哪个 API。

存在问题:

高效地获取单个前端操作所触发的 API 调用顺序

解决思路:

(1)通过抓包,获取前端操作时所触发的 API 调用顺序。

(2)通过用户行为日志,通过大数据手段来获取调用顺序。

 

测试场景二:API 测试过程中的第三方依赖

背景:API  之间存在依赖关系的,比如你的被测对象是 API A,但是 API A 的内部调用了 API B,此时如果由于某种原因,API B 在被测环境中处于不可用状态,那么 API A 的测试就会受到影响。

解决思路:

启动 Mock Server 来代替真实的 API  

 

测试场景三:异步 API 的测试

什么是异步 API?

调用后会立即返回,但是实际任务并没有真正完成,而是需要稍候去查询或者回调的 API

对异步 API 的测试主要分为两个部分:

(1)测试异常调用是否成功:检查返回值和后台工作线程是否被创建两个方面。

(2)测试异步调用的业务逻辑处理是否正确。

 

测试异步调用的业务逻辑复杂性:

因为异步 API 通常发生在一些比较慢的操作上,比如数据 I/O、消息队列 I/O 等,此时测试往往需要去验证数据库中的值、消息队列中的值等,这就需要测试代码具有访问和操作数据库或者消息队列的能力。在实际工程项目中,这些能力一般会在测试框架级别提供,也就是说 API 测试框架中包含对应的工具类去访问数据库或者消息队列。

posted @   努力的小测试  阅读(21)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示