100道接口测试面试题收好了!【建议收藏】
HTTP, HTTPS协议
- 什么是DNS
- HTTP协议
- 怎么抓取HTTPS协议
- 说出请求接口中常见的返回状态码
- HTTP协议请求方式
- HTTP和HTTPS协议区别
- HTTP和HTTPS实现机有什么不同
- POST和GET的区别
- HTTP请求报文与响应报文格式
- 什么是HTTP协议无状态协议?怎么解决HTTP协议无状态协议
- 常见的POST提交数据方式
- HTTP请求报文与响应报文格式
- HTTP协议学了哪几个版本
- Session和Cookies区别,
- HTTPS在哪一层, 会话层在第几层
- 浏览器输入url按回车背后经历了哪些?
TCP, UDP协议
- TCP/UDP协议的区别,TCP如何保证正确,微信基于什么协议,QQ基于什么协议,为什么?
- 你熟悉OSI协议吗?原理是什么
接口用例设计
- 怎么设计接口测试用例?
HTTPS测试点
- 从HTTP变化到HTTPS协议,测试点
- 购物车模块, 加入购物车接口测试点分析
- http://...?orderId=,**, 接口设计用例
- 设计接口测试用例时,涉及的是电商系统,其中包括很多修改,如商品.商家、店铺等等,针对这些数据的修改,会涉及到很多参数。
- 如商品的名称,商品的尺码,商品的顔色等等。
- 那在设计实现"修改"接口时,如何确定要传什么参数?是只需要传我要修改的参数,还是全部参数都要传?
- 上传文件测试点
- 根据以下界面设计测试用例
- 一个订单的几种状态如何全部测到,如:未处理,处理中,处理失败,处理成功
接口测试
- 为什么要做接口测试
- 你平常做接口测试的过程中发现过哪些BUG
- 平常你是怎么测试接口的
- 平常用什么工具测接口的
- 没有接口文档,如果做接口测试
- 接口测试的流程
- 常用什么接口测试工具, 说一个你在工作中具体怎么做接口测试的实例
- 不可逆的操作,如何处理,比如删除一个订单这种接口如何测试
- 接口产生的垃圾数据如何清理
- 测试的数据你放在哪
- 你们数字签名怎么实现的
- 当一个接口出现异常时候,你是如何分析异常的
- 你们怎么做的参数化
- 如何进行数据清洗
- 如何进行数据检验
- response怎么验证, 参数特别多
- 做接口测试如何分析是前端还是后端的问题
- 在测试接口中怎么知道请求成功还是失败
- 如何模拟弱网测试
- 异步接口怎么测试
- 接口的加密测试中对称加密与非对称加密有什么区别?如何开展测试?请详解
- 请详细阐述接口测试和UI测试在测试活动中是如何协同测试的?
- 目前接口文档是由word格式管理,因迭代快,产生很多文裆,分不请哪些是不用的接口,哪些是正在用的接口,哪些是更新后的接口, 文裆杂乱.另外因是 word格式管理,不方便询问,如何管理?
- 每次查看接口文档需要下截多个word,不能避免下载操作查看,效率不高,如何提高工作效率?
接口依赖
- 很多接口都需要登录怎么处理?
- 依赖于登录的接口如何处理 -token 和 session的管理
- 在手工接口测试或自动化接口测试的过程中,上下游接口有数据依赖如何处理?
- 依赖于第三方数据的接口如何进行测试
- 接口测试中依赖登录状态的接口如何测试
- 如果两个请求有严格的先后顺序,需要测试调转顺序的情况
- 下个接口请求参数依赖上个接口的返回数据
WebService
- HTTP接口测试和Web Service接口测试区别是什么?
- Web Service接口是如何测试的
接口框架
- 接口测试框架怎么搭建的?
- 你有没有做过框架稳定性优化相关的工作?
- 持续集成怎么做的?
Mock
- Mock怎么使用
- 你们Mock是怎么做的
RPC
- rpc接口怎么测试
- 什么是RPC接口,用Http设计一个RPC接口
- 你有没有自己实现过rpc框架
性能
- JMeter怎么存储变量, 让下一个接口使用
- 如何进行接口压测
- JMeter执行10次
- JMeter获取上一个request的结果
- JMeter完成一个用例
- 做接口测试当请求参数多时tps下降明显,此接口根据参数从redis中获取数据,每个参数与redfs交互一次,当一组参数是tps5133,五组参数是tps1l69,多次交互影响了处理性能,请详细描述如何改进增进效果的方案
高能部分
- TCP报头格式
- UDP报头格式
- TCP/UDP区别(不仅是宏观上的,最好能根据各自的机制讲解清楚)
- HTTP状态码(最好结合使用场景,比如在缓存命中时使用哪个)
- HTTP协议(一些报头字段的作用,如cace-control、keep-alive)
- OSI协议、TCP/IP协议以及每层对应的协议
- Session机制、Cookie机制
- TCP三次握手、四次挥手(这个问题真的要回答吐了,不过真的是面试官最喜欢问的,建议每天手撸一遍,而且不只是每次请求的过程,各种FIN_WAIT、TIME_WAIT状态也要掌握)。
- 打开网页到页面显示之间的过程(涵盖了各个方面,DNS解析过程,Nginx请求转发、连接建立和保持过程、浏览器内容渲染过程,考虑的越详细越好)。
- http和https区别,https在请求时额外的过程,https是如何保证数据安全的
- IP地址子网划分
- POST和GET区别
- DNS解析过程
- TCP如何保证数据的可靠传输的(这个问题可以引申出很多子问题,拥塞控制慢开始、拥塞避免、快重传、滑动窗口协议、停止等待协议、超时重传机制,最好都能掌握)
- 地址解析协议ARP
- 交换机和路由器的区别
- HTTP2.0、thrift
- API接口与SDI接口的区别(API是提供给别人的接口)
- dubbo如何一条链接并发多个调用。Dubbo的原理,序列化相关问题
- 你怎么理解http协议
- 说说http协议的工作流程
- http有哪些请求提交方式
- http中的200,302,403,404,500,503都代表什么状态
- 什么是web缓存?有什么优点
- 你怎么理解cookie和session,有哪些不同点
- 什么是https,说说https的工作原理
- 什么是http代理服务器,有什么用
- 什么是分布式系统
- 分布式系统你会考虑哪些方面
- 讲讲CAP理念
- 怎么理解强一致性、单调一致性和最终一致性
- 分布式系统设计你会考虑哪些策略
- 讲一讲TCP协议的三次握手和四次挥手流程
- 讲一讲TCP协议的三次握手和四次挥手流程
- 为什么TCP建立连接协议是三次握手,而关闭连接却是四次握手呢?为什么不能用两次握手进行连接
- 为什么TCP TIME_WAIT状态还需要等2MSL后才能返回到CLOSED状态
- 什么是DoS、DDoS、DRDoS攻击?如何防御
- 为什么说TCP/IP协议是不可靠的
- OSI有哪七层模型?TCP/IP是哪四层模型