当前位置: 首页 > news >正文

接⼝测试⾯试题汇总

接⼝测试⾯试题汇总

1getpost区别是什么?
答:POSTGET都是向服务器提交数据,并且都会从服务器获取数据。
区别:
1)传送⽅式:get通过地址栏传输,post通过报⽂传输
2)传送长度:get参数有长度限制(受限于url长度),⽽post⽆限制
3GET产⽣⼀个TCP数据包(对于GET⽅式的请求,浏览器会把http headerdata⼀并发送出去,服务器响应200返回数据),POST产⽣两个TCP
据包(对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok返回数据)
4get请求参数会被完整保留在浏览历史记录⾥,⽽post中的参数不会被保留
5)在做数据查询时,建议⽤GET⽅式;⽽在做数据添加、修改或删除时,建议⽤post⽅式

 

2cookiesession的区别
1cookie数据存放在客户的浏览器上,session数据放在服务器上
2cookie不是很安全,别⼈可以分析存放在本地的cookie并进⾏cookie欺骗,考虑到安全应当使⽤session
3session会在⼀定时间内保存在服务器上。当访问增多,会⽐较占⽤你服务器的性能,考虑到减轻服务器性能⽅⾯应当使⽤cookie
4)单个cookie保存的数据不能超过4K,很多浏览器都限制⼀个站点最多保存20cookie
5)可以将登陆信息等重要信息存放为session;其他信息需要保存,可以放在cookie

 

3、请求接⼝中常见的返回状态码
答:
1xx -- 信息提⽰(表⽰临时的响应。客户端在收到常规响应之前,准备接收⼀个或多个1xx响应)
2xx -- 成功(表明服务器成功地接受了客户端请求)
3xx -- 重定向(客户端浏览器必须采取更多操作来实现请求。例如,浏览器可能不得不请求服务器上的不同的页⾯,或通过代理服务器重复该请求)
4xx -- 客户端错误(发送错误,客户端有问题。例如,客户端请求不存在的页⾯,客户端未提供有效的⾝份证验证信息)
5xx -- 服务器错误(服务器由于遇到错误⽽不能完成该请求)
常见的有
1200 OK - [GET]:服务器成功返回⽤户请求的数据
2201 CREATED - [POST/PUT/PATCH]:⽤户新建或修改数据成功
3202 Aceepted - [*]:表⽰⼀个请求已经进⼊后台排队(异步任务)
4204 NO CONTENT - [DELETE]:⽤户删除数据成功
5400 INVALID REQUEST - [POST/PUT/PATCH]:⽤户发出的请求有错误,服务器没有进⾏新建或修改数据的操作
6401 Unauthorized -[*] :表⽰⽤户没有权限(令牌、⽤户名、密码错误)
7403 Forbidden -[*] :表⽰⽤户得到授权(与401错误相对),但是访问被禁⽌
8404 NOT FOUND -[*]:⽤户发出的请求针对得到是不存在的记录,服务器没有进⾏操作,该操作是幂等的
9406 Not Acceptable - [GET]:⽤户请求的格式不可得(⽐如⽤户请求JSON格式,但是只有XML格式)。
10410 Gone -[GET]:⽤户请求的资源被永久删除,且不会再得到的。
11422 Unprocesable entity - [POST/PUT/PATCH] 当创建⼀个对象时,发⽣⼀个验证错误。
12500 INTERNAL SERVER ERROR - [*]:服务器发⽣错误,⽤户将⽆法判断发出的请求是否成功。

 

4、怎么设计接⼝测试⽤例
通常,设计接⼝测试⽤例需要考虑以下⼏个⽅⾯:
1)是否满⾜前提条件
有些接⼝需要满⾜前提,才可成功获取数据。常见的,需要登录Token
逆向⽤例:针对是否满⾜前置条件(假设为n个条件),设计0~n条⽤例
2)是否携带默认值参数正向⽤例:带默认值的参数都不填写、不传参,必填参数都填写正确且存在的常规值,其他不填写,设计1条⽤例
3)业务规则、功能需求
这⾥根据时间情况,结合接⼝参数说明,可能需要设计N条正向⽤例和逆向⽤例
4)参数是否必填
逆向⽤例:针对每个必填参数,都设计1条参数值为空的逆向⽤例
5)参数之间是否存在关联
有些参数彼此之间存在相互制约的关系
6)参数数据类型限制
逆向⽤例:针对每个参数都设计1条参数值类型不符的逆向⽤例
7)参数数据类型⾃⾝的数据范围值限制
正向⽤例:针对所有参数,设计1条每个参数的参数值在数据范围内为最⼤值的正向⽤例

 

5、如何分析是前段还是后端的问题
1)检查接⼝,前端和后台之间是通过接⼝⽂件相互联系的,需要查看接⼝⽂件
2)检查请求的数据是什么,反馈的数据⼜是什么
3)根据接⼝⽂件,检查数据是否正确。如果发送的数据是正确的,但是后台反馈的数据是不符合需求的,那就是后台的问题;如果前端没有请求接⼝或
请求的时候发送数据与需求不符,那这个时候就是前端的问题了。
(先抓包看请求报⽂,对着接⼝⽂档,看请求报⽂有没问题,有问题就是前端发的数据不对
请求报⽂没问题,那就看返回报⽂,返回的数据不对,那就是后端开发的问题)

 

6、在⼿⼯接⼝测试或者⾃动化接⼝测试过程中,上下游接⼝有数据依赖如何处理?
答:在⼯具中可以使⽤全局变量等⽅式将需要的数据进⾏传送

 

7、依赖第三⽅数据的接⼝如何进⾏测试?
答:可以使⽤SoapUI等⼯具直接调⽤第三⽅数据接⼝的webservice,通过返回值来查看第三⽅数据的接⼝是否调⽤正常
也可以利⽤⼀些MOCK的⼯具来模拟第三⽅的数据返回,最⼤限度的降低对第三⽅数据接⼝的依赖

 

8、接⼝测试中,依赖登录状态的接⼝如何测试?
答:依赖登录状态的接⼝的本质上是在每次发送请求时需要带上session或者cookie才能发送成功,在构建POST请求时添加必要的session或者cookie

 

http://www.dtcms.com/a/303304.html

相关文章:

  • YOLO目标检测总结
  • EXCEL怎么使用数据透视表批量生成工作表
  • 【深度学习】深入理解交叉熵损失函数 (Cross-Entropy Loss Function)
  • Lambda表达式Stream流-函数式编程-java8函数式编程(Lambda表达式,Optional,Stream流)从入门到精通-最通俗易懂
  • React与Rudex的合奏
  • 代码解读:微调Qwen2.5-Omni 实战
  • 从单枪匹马到联盟共生:白钰玮的 IP 破局之路|创客匠人
  • 2025创始人IP如何破局?
  • 很妙的一道题 Leetcode234. 回文链表
  • windows部署ACE-Step记录
  • 从一起知名线上故障,谈配置灰度发布的重要性
  • 大模型的开发应用(十九):多模态模型基础
  • 源代码管理工具有哪些?有哪些管理场景?
  • React面试题
  • 2025年SDK游戏盾终极解析:重新定义手游安全的“隐形护甲”
  • 【Linux操作系统】简学深悟启示录:Linux环境基础开发工具使用
  • 浅谈面试中的递归算法
  • 进程通信————system V 消息队列 信号量
  • 卡内基梅隆大学提出Human2LocoMan:基于人类预训练的四足机器人「多功能操作学习框架」
  • sqlite3学习---基础知识、增删改查和排序和限制、打开执行关闭函数
  • AAAI 2025多模态重大突破:SENA框架重塑多模态学习,零标注实现自进化
  • 【Python】—— 语法糖
  • 求两数之和
  • R语言与作物模型(以DSSAT模型为例)融合应用高级实战技术
  • window显示驱动开发—Direct3D 11 视频设备驱动程序接口 (DDI)
  • 图片上传 el+node后端+数据库
  • 数据库事务中的陷阱:脏读、幻读与不可重复读
  • 第四章:分析 Redis 性能高原因和核心字符串类型命令
  • 特性阻抗的近似计算
  • 【Linux】协议——TCP/IP协议