吊打面试官系列之:我这样回答 “如何更高效的进行接口测试“,面试官果然跪了。

简介: 吊打面试官系列之:我这样回答 “如何更高效的进行接口测试“,面试官果然跪了。

1、引言


小屌丝:鱼哥,有一个粉丝私信我,让我给她培训接口测试;

小鱼:哎呦~ ~ 是 “他” 还是 “她”;

小屌丝:鱼哥,你这不是闹呢嘛。你懂得…

小鱼:我还不懂,就是不懂…

小屌丝:别闹… 再闹,就向成都哪有,网络没信号,无法扫码做核酸…

小鱼:别… 这个事影响挺大的…

小屌丝:那你还不给我讲一讲,如何进行高效的接口测试。


虽然不情愿,但是为了小屌丝的幸福,我还是要讲一讲,

如何能提高接口测试效率。


2、什么是接口测试


定义:

测试系统组件间接口的一种测试。


用途:

接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。


测试重点:

测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。


3、为什么要做接口测试


通常有以下几点:


互联网的快速发展,公司内部系统或与外部系统的关联越来越多,一个业务流程关联多个后端系统,它们的关联都是基于接口来实现,接口测试可以将复杂的系统关联进行简化,只要做好每个接口的测试就能够较好的保证系统质量;

单个系统的变更,是否会影响到关联业务系统,比较难用常规的测试方面来覆盖相关的应用系统,但可以通过对接口功能的覆盖来验证是否影响它人对接口的调用;

接口功能比较单一,能够比较好的进行测试覆盖,也相对容易实现自动化持续集成,可以减少人工回归成本与时间,缩短测试周期;

接口相对于界面功能,会更底层一些,测试覆盖会更容易。


4、接口测试的范围


以下几点:


业务功能:正常、异常场景是否实现;

业务规则:覆盖度是否全面;

参数验证:边界、业务规则是否达到要求;

异常场景:重复提交、并发提交、事务中断、多机环境、大数据量测试;

性能测试:响应时间、吞吐量、并发数、资源要求;

安全测试:权限验证、SQL注入等;


5、接口测试的重点


以下几点:


检查接口返回的数据是否与预期结果一致。

检查接口的容错性,假如传递数据的类型错误时是否可以处理。

接口参数的边界值。例如,传递的参数足够大或为负数时,接口是否可以正常处理。

接口的性能,http请求接口大多与后端执行的SQL语句性能、算法等比较相关。

接口的安全性,外部调用的接口尤为重要。


6、接口测试原则


6.1 基本原则


自动化:接口测试是非交互式的自动化执行,不需要人参与;

独立性:接口测试之间不应该相互依赖(个别情况除外);

可重复性:接口测试可重复执行,不受环境影响;

接口测试遵守BCDE原则,保障接口交付质量:

Border:边界测试;

Correct:正确输入,预期情况;

Design:按照需求和设计文档编写测试用例;

Erorr:错误输入,预期情况;

数据准备:数据准备通过系统服务进行,不能通过直接插入db方式;

可测试性:对于不可测的代码需要进行重构成合理的结构;

覆盖性:接口测试需要覆盖所有UC,同时代码覆盖率和分支覆盖率应达到一定标准,新增代码必须被覆盖;

持续性:如果代码修改导致已有接口测试执行失败,必须修复代码问题或者测试代码逻辑;

时间要求:接口测试应该在项目发布之前完成,不应放到项目发布之后补充;


6.2 关键原则


有效的接口测试关键原则是要覆盖所有入口,mock所有依赖,校验执行过程中所留下的痕迹,所以:


入口覆盖:接口测试用例必须覆盖所有服务入口、消息入口、定时任务入口。

mock依赖:在基本原则中,有可重复这个原则,即接口测试不能受环境依赖,需要mock掉对外依赖。但对于db依赖,不建议完全mock掉,一方面mock成本高,另外可能覆盖不到sql和表约束逻辑。

完整校验:效的接口测试,应该具备完整的校验,没有校验的接口测试是没有意义的。只要执行过程中,留下的痕迹对业务有影响,都要进行完整校验,方能保障接口测试的有效性。

接口返回值校验;

DB校验;

缓存校验;

依赖入参校验;

消息校验;

6.2 其他原则


6.2.1. 系统角度


从系统角度来分析入口调用,以HSF服务为例:


外围系统调用由我们系统提供的服务;

系统执行了一堆代码逻辑,其中包含有分支逻辑;

系统执行过程中依赖外部HSF服务,进行了调用,并得到了返回值;

系统执行过程中依赖DB查询或者落地了数据,依赖缓存查询或者落地了数据;

系统执行过程中对外发送了消息;

给上游系统返回HSF执行结果。


7、接口测试常用工具


这里,我就列举几个常用的,和众所周知的测试工具,

免得被说我这又在给某某 厂商打广告…


Jmeter

Postman

ApiFox

SoapUI

ApiJson

ApiPost

8、总结


今天的分享,差不多就完事了。

关于如何提高接口有效性的测试,希望大家也都能彻底的掌握并应用于实际项目中。


关于吊打面试官系列的文章,小鱼也会持续的更新,例如


《吊打面试官系列之:UI自动化面试题汇总,对标P7,从此再也不怕面试官了》

《从P6 到P7,到底要做哪些准备,掌握多少知(姿)识(势),小鱼亲身分享!!》

《吊打面试官系列之:移动APP测试开发面试题汇总,对标P7职位~ ~熬夜整理,建议收藏!!!》

《吊打面试官系列之:什么是 认证、鉴权、授权、权限控制,这一篇必须安排的明明白白。》

《吊打面试官系列之:掌握兼容性测试21个知识点,让面试官也对你膜拜。》

《吊打面试官系列之:掌握了这166个Linux常用命令,面试官果然被我征服了。》

《记住这几点,你的offer会拿到手软》

《一本正经的聊一聊面试官的心理》

更多的吊打面试官系列博文,我就不列举了, 可以直接点击吊打打面试官专栏去查看。


目录
相关文章
|
8月前
|
监控 Java 关系型数据库
面试性能测试总被刷?学员真实遇到的高频问题全解析!
面试常被性能测试题难住?其实考的不是工具,而是分析思维。从脚本编写到瓶颈定位,企业更看重系统理解与实战能力。本文拆解高频面试题,揭示背后考察逻辑,并通过真实项目训练,帮你构建性能测试完整知识体系,实现从“会操作”到“能解决问题”的跨越。
|
数据可视化 前端开发 测试技术
接口测试新选择:Postman替代方案全解析
在软件开发中,接口测试工具至关重要。Postman长期占据主导地位,但随着国产工具的崛起,越来越多开发者转向更适合中国市场的替代方案——Apifox。它不仅支持中英文切换、完全免费不限人数,还具备强大的可视化操作、自动生成文档和API调试功能,极大简化了开发流程。
|
Java 测试技术 容器
Jmeter工具使用:HTTP接口性能测试实战
希望这篇文章能够帮助你初步理解如何使用JMeter进行HTTP接口性能测试,有兴趣的话,你可以研究更多关于JMeter的内容。记住,只有理解并掌握了这些工具,你才能充分利用它们发挥其应有的价值。+
1593 23
|
监控 Kubernetes Java
阿里面试:5000qps访问一个500ms的接口,如何设计线程池的核心线程数、最大线程数? 需要多少台机器?
本文由40岁老架构师尼恩撰写,针对一线互联网企业的高频面试题“如何确定系统的最佳线程数”进行系统化梳理。文章详细介绍了线程池设计的三个核心步骤:理论预估、压测验证和监控调整,并结合实际案例(5000qps、500ms响应时间、4核8G机器)给出具体参数设置建议。此外,还提供了《尼恩Java面试宝典PDF》等资源,帮助读者提升技术能力,顺利通过大厂面试。关注【技术自由圈】公众号,回复“领电子书”获取更多学习资料。
|
SQL 安全 测试技术
2025接口测试全攻略:高并发、安全防护与六大工具实战指南
本文探讨高并发稳定性验证、安全防护实战及六大工具(Postman、RunnerGo、Apipost、JMeter、SoapUI、Fiddler)选型指南,助力构建未来接口测试体系。接口测试旨在验证数据传输、参数合法性、错误处理能力及性能安全性,其重要性体现在早期发现问题、保障系统稳定和支撑持续集成。常用方法包括功能、性能、安全性及兼容性测试,典型场景涵盖前后端分离开发、第三方服务集成与数据一致性检查。选择合适的工具需综合考虑需求与团队协作等因素。
2120 24
|
网络协议 Shell 网络安全
面试官想听的不仅是命令——如何结构化回答“容器无Shell时如何测试外网”?
“说说看,如果一个Pod的容器没有Shell,如何测试它能否访问外网?”
面试官想听的不仅是命令——如何结构化回答“容器无Shell时如何测试外网”?
|
JSON 前端开发 测试技术
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
1224 10
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
|
JSON 前端开发 API
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
1014 5
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
|
SQL 测试技术
除了postman还有什么接口测试工具
最好还是使用国内的接口测试软件,其实国内替换postman的软件有很多,这里我推荐使用yunedit-post这款接口测试工具来代替postman,因为它除了接口测试功能外,在动态参数的支持、后置处理执行sql语句等支持方面做得比较好。而且还有接口分享功能,可以生成接口文档给团队在线浏览。
683 2
|
存储 JSON API
Python测试淘宝店铺所有商品接口的详细指南
本文详细介绍如何使用Python测试淘宝店铺商品接口,涵盖环境搭建、API接入、签名生成、请求发送、数据解析与存储、异常处理等步骤。通过具体代码示例,帮助开发者轻松获取和分析淘宝店铺商品数据,适用于电商运营、市场分析等场景。遵守法规、注意调用频率限制及数据安全,确保应用的稳定性和合法性。