news 2026/5/1 8:42:46

接口测试详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
接口测试详解

🍅点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快

一、什么是接口测试?

所谓接口,是指同一个系统中模块与模块间的数据传递接口、前后端交互、跨系统跨平台跨数据库的对接。而接口测试,则是通过接口的不同情况下的输入,去对比输出,看看是否满足接口规范所规定的功能、安全以及性能方面的要求。

二、为什么要做接口测试?

1、相比系统测试,更早介入测试,提高效率

2、可以发现前端测试不了的问题,提高版本质量

3、接口标准化了,更容易实现自动化和持续集成,降低测试成本

因此在软件测试招聘岗位的要求中,无论是功能测试、自动化测试、性能测试亦或测试开发岗位,接口测试都是必须掌握的!

三、如何开展接口测试?

接口测试的开展一般包含5个部分:接口文档分析、接口用例设计、执行接口用例、定位bug提交并跟踪、输出接口测试报告。

1、接口文档分析

接口文档一般是由后端开发提供,可以是在线的swagger也可以是word。

若开发未提供接口文档,则可通过抓包工具fiddler或charles去抓取接口信息进行分析,进行接口测试。

获取到接口文档后,我们需要理清楚每个接口包含的请求、响应信息,概括为接口信息五要素:

1)接口地址url:

例注册接口地址:http://api.lemonban.com:8765/futureloan/member/register

http-请求协议,api.lemonban.com-域名或ip,8765-端口号,/futureloan/member/register-资源路径

2)请求方法:

看开发定义的请求方法是什么,测试就对应用什么方法。restful风格中常见的请求方法为post、get、put、patch、delete等

3)请求头:

发送请求到服务器,包含的头部信息。常见的content-type。

4)请求体:

发送请求到服务器,具体传递的数据。例如要完成注册接口的调用,请求体包含手机号mobile_phone、密码pwd、用户名reg_name、验证码verification_code。

5)响应内容:

接口文档中描述的响应内容,与接口测试的实际结果做比较,可以判断当前接口是否通过。响应内容包含:响应码-http状态码、响应头、响应体。

2、接口用例设计

接口用例设计跟功能测试思维相通,需要:1)清楚项目业务 2)运用用例设计8大方法:等价类、边界值、场景法、因果图、判定表、正交试验法、状态迁移法、错误推测法。

以下是接口用例模板参考:

3、执行接口用例,进行接口测试

接口测试原理:模拟客户端发送请求到服务器,服务器接收请求并处理,返回响应到客户端, 客户端接收响应这样的一个过程。

通过接口测试原理可知,进行接口测试需要借助工具或代码。主流的接口测试工具Jmeter、postman。使用工具编写脚本,需要结合接口项目具体应用场景来设计,运用关联、参数化、断言等技术。

4、发现bug、定位、提交并跟踪

怎么判断是否是bug呢?

1)接口测试中响应结果错误,返回了错误的code码、msg信息:

  • 判断请求:请求地址、方式、请求头、请求正文是否正确,如果不正确则修改对应请求信息再做发送;如果正确,则说明是服务器端问题
  • 进一步查看服务器日志、数据库信息,并整理信息提交bug

2)接口测试中响应结果,code码、msg正确,但返回的data数据不正确:

  • 查看数据库数据正确完整性,并结合服务器日志,整理信息提交bug

3)接口测试中响应结果正确,但若是增删改业务操作:

  • 需进一步确认到数据库层面,数据增删改的正确性

4)考虑安全性:一般接口对请求会做出一些限制,比如请求次数、请求频率限制;涉及敏感信息是否加密

5、接口测试报告

接口测试报告的整理这个看公司要求。有些公司是在整个项目测试结束后,整理一份统一的测试报告。有些公司会要求输出阶段性的测试报告。

四、接口测试常见面试题

  1. 什么是接口?
  2. 如果模块请求http 改为了https,测试方案应该如何制定,修改?
  3. 用HTTP 协议调试代理工具有什么?详细说明抓取 HTTPS 协议的设置过程?
  4. 接口产生的垃圾数据如何清理?
  5. 下个接口请求参数依赖上个接口的返回数据?
  6. 接口测试的步骤有哪些?
  7. 接口测试中依赖登录状态的接口如何测试?
  8. 依赖于第三方数据的接口如何进行测试?
  9. 文件上传的接口如何处理?
  10. 解释什么是SOAP?
  11. 解释什么是REST API?
  12. API测试发现的Bug类型是什么?
  13. 我们测试的接口属于哪一类?
  14. 说下你接口测试问题如何定位?
  15. Cookie 保存在哪里?
  16. HTTP有哪些请求方法?
  17. 接口自动化测试的流程?
  18. 接口测试用例的编写要点有哪些?
  19. 提到UI级别测试和API测试之间的关键区别?
  20. HTTPS的工作原理?
  21. HTTPS和HTTP的区别?
  22. POST和GET有什么区别?
  23. Session与Cookie有什么区别?
  24. TCP和UDP有什么区别?
  25. 在API测试中测试的常用协议是什么?
  26. Jmeter、postman工具的区别?
  27. 说下接口工具如何去操作数据库?
  28. 传参数据格式除了json格式还有哪些?
  29. 接口测试数据过多时如何进行测试?
  30. 你们请求参数加密怎么处理的?
  31. 接口测试中有哪些印象深刻的bug?
  32. 项目中有测试过多少个接口?写过多少用例?

加油吧,测试人!如果你需要自我提升,那就行动吧,在路上总比在起点观望的要好。未来的你肯定会感谢现在拼命的自己!

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/30 9:04:48

Langchain-Chatchat支持批量测试问答准确率的方法

Langchain-Chatchat 支持批量测试问答准确率的方法 在企业知识管理日益智能化的今天,越来越多组织开始构建基于私有文档的AI问答系统。然而,一个常见的困境是:我们如何确信这个“聪明”的助手真的理解了公司的制度、产品手册或技术规范&…

作者头像 李华
网站建设 2026/4/29 3:23:40

新手必读 | 网络安全入门核心概念与实战要点详解,一篇覆盖基础到进阶

一、什么是网络安全? 百度上对“网络安全”是这么介绍的: “网络安全是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露、系统连续可靠正常地运行,网络服务不中断。” 嗯…是…

作者头像 李华
网站建设 2026/4/17 0:29:15

Langchain-Chatchat如何设置问答结果的最大长度?

Langchain-Chatchat 如何设置问答结果的最大长度? 在构建企业级本地知识库系统时,一个常被忽视但极为关键的问题浮出水面:如何防止大模型“话痨”? 设想这样一个场景:用户向智能客服提问“请假流程是什么”&#xff0c…

作者头像 李华
网站建设 2026/4/28 4:40:01

Langchain-Chatchat实现员工入职培训智能辅导系统

Langchain-Chatchat实现员工入职培训智能辅导系统 在新员工踏入公司大门的第一周,最常听到的不是“欢迎加入”,而是“这个流程怎么走?”“试用期到底多久?”“企业邮箱怎么申请?”——这些看似简单的问题,却…

作者头像 李华
网站建设 2026/5/1 5:06:14

Langchain-Chatchat如何配置不同的LLM推理引擎?

Langchain-Chatchat如何配置不同的LLM推理引擎? 在企业级AI应用日益普及的今天,一个核心挑战浮出水面:如何在保障数据隐私的前提下,实现高效、可控的智能问答?越来越多的企业开始将目光从公有云API转向本地化部署方案。…

作者头像 李华