接口测试如何做?你真的会做吗?全网超全整理实战案例...


前言

API测试的流程

准备测试数据(这是可选步骤,不一定所有 API 测试都需要这一步)
通过 API 测试工具,发起对被测 API 的 request
验证返回结果的 response

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

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

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

存在的情况
存在后一个API需要使用前一个API返回结果的情况
需要根据前一个API的返回结果决定后面应该调用哪个API

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

解决上述问题思路
通过网络监控手段,捕获单个前端操作时所触发的API调用顺序,譬如Fiddler、Charles等抓包工具;
也可以通过用户行为日志,通过大数据手段来获取调用顺序;

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

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

在单体架构下,通常只会在涉及到第三方 API 集成的场景中才会遇到这个问题,所以还不算严重。但是,在微服务架构下,API 间相互耦合的依赖问题就会非常严重。

解决问题的核心思路
启用 Mock Server 来代替真实的 API

场景3:异步 API 的测试

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

对异步 API 的测试主要分为两个部分
测试异步调用是否成功:检查返回值和后台工作线程是否被创建两个方面就可以了;
测试异步调用的业务逻辑处理是否正确;

测试异步调用的业务逻辑复杂性
因为异步 API 通常发生在一些比较慢的操作上,比如数据库 I/O、消息队列 I/O 等,此时测试往往需要去验证数据库中的值、消息队列中的值等,这就需要测试代码具有访问和操作数据库或者消息队列的能力。

在实际工程项目中,这些能力一般会在测试框架级别提供,也就是说要求 API 测试框架中包含对应的工具类去访问和操作数据库或者消息队列等

API测试面试常问

面试题:你们接口怎么鉴权的?

答:
通过用户和密码,auth鉴权;
通过 cookie和 session;
通过 token;
通过sign签名;
现在app一般是通过 token鉴权,有些是通过把 token放在请求头里面,有些是通过 singn签名这个字段放在body里面去鉴权的,一般的web是通过 session去鉴权的

面试题:cookie、session、token的区别?

答:
它们都是用来做鉴权的,区别的话,大概是这样的
现在 cookie、session一般是配合使用的用户第一次登陆时,服务器会创建一个 session生成一个 sessionID,sessionID保存在 cookie中,然后返回到客户端,保存在浏览器中。

客户端每次发请求都会把这个值带到服务器,做一个鉴权和会话的跟踪,或者时效的验证

token和 cookie、session差不多,通过算法,每次验陆,会产生一串很长的随机字符串,一般是在放在返回的body里面,或者返回的头里面,他们都是服务器产生,带过来是要做验证和时效的验证的。

一般在app中使用token比较多一点,Web端使用cookie、session的鉴权方式会多一点。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只有付出,才能获得回报;只有坚持,才能看到成功的曙光。在努力奋斗的路上,没有捷径可走,但不要放弃希望,因为每一份努力都会让你更接近目标。相信自己的实力,勇敢迎接挑战,你会发现,成长的旅程其实很美好。

每一天都是一个新的开始,不要因过去的失败而沉溺,在挫折中寻找成长的机会,坚持自己的梦想,勇往直前,无坚不摧,你将成为自己心中最强大的存在。

只有不断挑战自我,才能超越自己;只有不断努力,才能实现梦想;只有坚持不懈,才能迎来成功的曙光。让我们勇往直前,不停歇地奋斗,成就辉煌的人生!

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值