IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 2022年 接口测试高频面试题及答案 -> 正文阅读

[开发测试]2022年 接口测试高频面试题及答案

题目目录

  • 什么是接口测试?
  • 为什么要做接口测试/接口测试有哪些优势?
  • 请问你们公司是如何做接口测试的?
  • 怎么设计接口测试用例?
  • 没有接口文档如何做接口测试?
  • 怎么区分bug是前端还是后端的bug?
  • 常用的接口测试工具?
  • 接口之间数据依赖如何处理?
  • 依赖于第三方数据的接口如何进行测试?
  • 你平常做接口测试的过程中发现过哪些bug?
  • 当接口出现异常时候,你是如何分析异常的?

什么是接口测试?

  • 接口测试就是通过测试不同情况下的入参与之相应的出参信息来判断接口是否符合或满足相应的功能性、安全性要求
  • 测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系

为什么要做接口测试/接口测试有哪些优势?

  • 可以发现UI页面上发现不了的bug
  • 检查系统的安全性、稳定性
  • 越底层发现bug,它的修复成本是越低的
  • 检测系统异常处理的能力
  • 提前介入测试,提升测试效率

请问你们公司是如何做接口测试的?

  • 需求分析
    • 对于产品的需求进行认识和理解,这一块主要了解接口 业务逻辑、业务关联
  • Api文档分析与评审
    • 主要分析:请求和响应
    • 请求:
      • 请求url是否合理
      • 请求信息头是否明确
      • 请求方法是否合理
      • 请求参数是否必填、含义、参数方式是否明确
    • 响应:
      • 响应状态码
      • 响应数据格式
      • 响应信息头
      • 异常返回信息和错误代码是否合理
  • 测试计划编写
    • 测什么、谁来测、怎么测、风险预测及进度控制
  • 用例设计与评审
    • 根据接口业务、接口信息编写接口用例
    • 与产品、开发一起评审用例
  • 测试环境准备
    • 例如测试工具:Postman、jmeter安装
    • 接口服务的环境(大部分开发进行部署)
  • 执行用例
    • 按照接口用例执行
  • 缺陷管理
    • 记录发现的缺陷,开发完成之后进行回归验证
  • 测试报告
    • 编写本次测试报告,发送给相关人员

重点说明:

  • 接口测试重点是:接口文档分析、用例设计
  • 回答问题时,需要有重点,例如 接口文档分析、用例设计使用了哪些些方法、遇见什么问题,如何解决的(接口数据存在关联,工具里面如何做的关联)

怎么设计接口测试用例?

参考下图:
在这里插入图片描述

  • 接口业务逻辑测试

    接口逻辑测试是指根据业务逻辑、输入参数、输出值的描述,对正常输入情况下所得的输出值
    是否正确的验证,需要覆盖到接口实现的所有业务场景。

  • 其他测试点

    • 例如需要登录状态(以token为例,token为空、错误的token、失效的token)。

    • 参数异常情况

      • 必填项验证
      • 参数的长度、类型、格式异常:
        常规参数:(数字、字符串、日期)
        参数长度:6-18位。或身份证、电话的长度。
        参数类型:数字(精度),字母,中文,带空格的参数,特殊字符、NULL。
        日期格式:年月日,年月日时分秒,日期格式(包括/,-,:等)。
    • 错误码异常覆盖

    • 其他的关注点补充

      • 接口有翻页时,页码与页数的异常值测试
      • 数据库的增删改查后,接口数据是否保持一致性
      • 类似文件地址接口,需要查看返回的地址是否可以打开下载
      • 所有列表页接口必须考虑排序值
      • 所有功能都要考虑兼容旧版本
  • 面试回答说明:需要逻辑清晰,建议按照图片分类回答,先回答大的分类,在具体到每个细节

没有接口文档如何做接口测试?

  • 首先去跟开发沟通,是否真正没有编写接口说明文档或者存在相关的设计文档,如果真是没有,可以推动一下是否可以进行补充(站在开发的角度进行沟通)
  • 如果存在前端界面,通过抓包工具进行抓包,整理出接口相关信息,与开发进行沟通是否存在遗漏
  • 不存在前端界面,有代码能力,直接去查看开发代码实现,获取接口信息
  • 将整理的接口信息,编写出对应的接口测试用例
  • 使用接口测试工具,执行测试用例,例如:Postman或Jmeter
  • 记录测试结果,存在问题及时与开发沟通
  • 提交缺陷,开发修改之后进行回归测试
  • 测试完成提交测试报告
  • 做接口测试项目复盘,主要推动开发对接口文档重要性

常用的接口测试工具?

  • Postman
  • Jmeter
  • Fiddler
  • Apifox
  • 通过代码进行,例如 python+request、java+httpclient

怎么区分bug是前端还是后端的bug?

一般我会使用抓包工具进行抓包,获取前端和后端的数据交互过程

  • 查看前端发送的请求数据是否正确(请求url、请求头、请求参数),如果前端参数存在问题,这个可以确定前端肯定存在问题(不能确定后端不存在问题,需要使用正确参数进行验证)
  • 前端请求参数没有问题,查看后端响应的数据是否有问题,如果后端数据存在问题,那就是后端问题
  • 最后一种,前端参数和后端请求都没有问题,这时候可以考虑前端是否做了数据转换(格式化),大概率是这里面处理出问题(曾经一个数值问题,由于前端在对数值转换处理出问题)

接口之间数据依赖如何处理?

  • 直接举例接口测试使用的工具里面实现
  • 参考(Posman):
    • 在前置接口中提取要传递的数据保存到全局变量或者环境变量
    • 在后续接口,直接使用保存在全局变量或环境变量中的参数值

依赖于第三方数据的接口如何进行测试?

  • 通过mock工具模拟第三方返回

你平常做接口测试的过程中发现过哪些bug?

  • 一般错误:接口没实现,没按约定返回结果,边界值处理问题等
  • 输入异常值(空值、特殊字符、超过约定长度等)
  • 输入错误的参数,多输入,少输入参数
  • 安全性问题,如明文传输、返回结果含有敏感信息,没对用户身份信息做校验,没有恶意请求拦截等
  • 性能问题,如接口并发插入多条相同操作,响应时间过长,接口压测出现瓶颈等
  • 例如:一个管理员删除操作,前端界面非管理员不显示删除按钮,通过接口可以使用非管理员进行删除

当接口出现异常时候,你是如何分析异常的?

  • 一种方案使用工具(fiddler)抓包,查看请求报文和返回报文
  • 第二种:web端直接使用浏览器 F12界面的Network,查看请求报文和返回报文
  • 如果是后端问题,查看后端日志

可以参考前面一篇文章接口调不通,如何排查问题?

以上内容纯属个人理解,如有不足,欢迎各位大神指正,转载请注明出处!

如果觉得文章不错,欢迎关注微信公众号,微信公众号定期推送相关测试技术文章
个人微信号

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2022-03-16 22:52:05  更:2022-03-16 22:53:08 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 0:44:29-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码