版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2025接口测试工程师技能题库(含答案解析)一、单项选择题(每题2分,共30分)1.HTTP状态码502的含义是?A.请求超时B.网关错误C.未授权D.服务器内部错误答案:B解析:502BadGateway表示网关或代理服务器从上游服务器收到了无效响应,属于网关层错误。2.下列哪个HTTP方法用于对资源进行部分更新?A.PUTB.POSTC.PATCHD.HEAD答案:C解析:PUT对资源做整体替换,PATCH用于局部更新;POST用于新增或触发操作,HEAD仅获取响应头。3.JSON格式中,下列哪一项不是合法的JSON数据类型?A.StringB.ArrayC.Date(日期对象)D.Number答案:C解析:JSON仅定义string、number、boolean、null、array、object六种类型,日期必须以字符串形式表示,不存在原生Date类型。4.接口测试中,断言(Assertion)的主要作用是?A.发送HTTP请求B.校验请求与响应是否符合预期C.生成随机测试数据D.模拟网络延迟答案:B5.JWT(JSONWebToken)由哪三部分构成?A.Header.Payload.SignatureB.Token.Session.CookieC.Request.Response.StatusD.Header.Body.Tail答案:A解析:JWT由头部(Header)、载荷(Payload)、签名(Signature)三部分组成,各部分以点号分隔。6.在RESTful风格中,GET/users/1表示?A.创建一个新用户B.更新ID为1的用户C.获取ID为1的用户信息D.删除ID为1的用户答案:C7.下列HTTP方法中属于幂等的是?A.POSTB.PATCHC.PUTD.以上都不是答案:C解析:PUT重复执行结果一致,属于幂等;POST每次执行都会产生新资源,PATCH部分更新也不保证幂等。8.Postman中引用环境变量的正确语法是?A.{{baseUrl}}B.${baseUrl}C.@baseUrl@D.%baseUrl%答案:A9.关于接口自动化测试,下列说法错误的是?A.可重复执行,利于回归B.可提前发现后端缺陷C.可以完全取代手工测试D.需要持续维护测试脚本答案:C解析:接口自动化无法完全取代手工测试,异常流程、探索性测试及用户体验类场景仍需人工介入。10.OAuth2.0中,用于访问受保护资源的凭证是?A.ClientIDB.AccessTokenC.RefreshTokenD.RedirectURL答案:B解析:ClientID用于识别客户端,RefreshToken用于刷新已过期的AccessToken,真正访问资源时携带的是AccessToken。11.接口测试中设置请求超时时间的主要目的是?A.提高测试用例执行速度B.防止请求长时间挂起,及时暴露接口异常C.增加服务器负载D.压缩传输数据答案:B12.携带JWT访问受保护接口时,通常添加在HTTP请求头中的字段是?A.Authorization:Bearer<token>B.Cookie:token=<token>C.User-Agent:<token>D.Content-Type:<token>答案:A13.关于Cookie、Session和Token,下列说法正确的是?A.Cookie数据保存在服务端B.SessionID通常通过Cookie传递C.Token一定保存在Cookie中D.Session只能用于分布式系统答案:B解析:Cookie保存在客户端,Session数据保存在服务端,服务端通常将SessionID写入Cookie中返回给客户端。14.某接口压测报告显示"P95响应时间=350ms",其含义是?A.95%的请求响应时间小于等于350msB.所有请求平均响应时间为350msC.最大响应时间为350msD.95%的请求响应时间大于350ms答案:A15.下列工具中,主要用于接口性能/压力测试的是?A.SwaggerB.FiddlerC.JMeterD.Postman答案:C解析:JMeter原生支持多线程并发压力测试;Swagger是接口文档工具,Fiddler是抓包工具,Postman侧重功能调试。二、多项选择题(每题3分,共15分)1.下列属于HTTP接口常见认证方式的有?A.BasicAuthB.BearerToken(JWT)C.APIKeyD.RSA加解密算法答案:ABC解析:RSA是一种非对称加密算法,用于加密与签名,本身不是认证方式;BasicAuth、BearerToken、APIKey均为常见接口认证方案。2.接口测试通常需要验证的内容包括?A.功能正确性(参数、响应结构)B.安全性(越权、注入)C.性能表现(响应时间、吞吐量)D.前端页面样式答案:ABC解析:接口测试关注服务端数据交互层面的质量属性,页面样式属于UI测试范畴。3.一个完整的接口自动化测试框架通常包含?A.用例管理模块B.数据驱动模块C.断言与校验模块D.测试报告模块答案:ABCD4.接口测试过程中,下列哪些现象属于接口缺陷?A.必填参数缺失时服务端返回500B.越权访问他人数据C.响应字段类型与接口文档不一致D.接口调用成功但数据库未写入数据答案:ABCD解析:参数校验缺失导致500、越权漏洞、响应结构与契约不符、数据一致性被破坏,均属于服务端接口缺陷。5.关于RESTfulAPI设计,正确的做法有?A.URL使用名词表示资源B.用动词定义资源操作(如/getOrder)C.使用HTTP状态码表达请求结果D.URL中全部使用大写字母答案:AC解析:RESTful规范要求以名词表示资源、通过HTTP方法表达动作;状态码承载请求结果语义。URL一般区分大小写且约定使用小写。三、判断题(每题2分,共20分)1.GET请求不允许携带请求体,这是HTTP协议强制规定的。答案:错误解析:HTTP协议并未明确禁止GET携带请求体,但语义上不推荐,且部分服务器和代理会忽略请求体。2.接口返回HTTP200状态码,说明业务处理一定成功。答案:错误解析:200仅表示HTTP层请求成功,业务是否成功需结合响应中的业务码字段判断。3.DELETE方法是幂等的。答案:正确解析:重复删除同一资源,资源的最终状态一致;第二次删除可能返回404,但影响结果与第一次相同。4.JWT认证是无状态的,服务端无需保存会话信息。答案:正确5.接口测试只需关注功能正确性,无需关注安全性。答案:错误6.使用Charles抓取HTTPS接口报文时,需要在客户端安装并信任Charles的CA证书。答案:正确7.并发重复调用下单接口,多个请求的结果一定与串行调用一致。答案:错误解析:并发场景可能出现超卖、唯一约束冲突等数据一致性问题,结果可能与串行调用不一致。8.接口超时时间设置越长,测试通过率一定越高。答案:错误解析:超时时间过长会延迟缺陷暴露,并拖慢整个测试套件的执行效率,并非越长越好。9.数据驱动测试可以将测试数据与测试逻辑分离,提高用例复用性。答案:正确10.接口自动化测试报告应至少包含用例总数、通过率与失败原因等信息。答案:正确四、简答题(每题5分,共15分)1.简述接口测试与UI测试的主要区别。答案:(1)测试层级不同:接口测试直接针对服务端接口的数据与逻辑进行验证,UI测试主要验证页面展示和用户交互;(2)执行方式不同:接口测试通过构造HTTP请求、校验响应完成,无需操作界面;(3)缺陷发现时机不同:接口测试可在前后端联调前执行,能更早发现后端缺陷,修复成本更低;(4)维护与执行成本不同:接口测试脚本稳定、执行速度快,比UI自动化更适合回归测试。2.简述接口测试中"幂等性"的含义,并说明在测试中的应用。答案:幂等性指同一操作重复执行多次,产生的结果(资源状态)与执行一次相同。例如DELETE重复删除同一资源结果一致,PUT重复提交相同数据结果的资源状态一致;而POST通常不具备幂等性。测试时可对幂等接口重复调用,验证返回结果和数据状态一致,防止重复请求引发重复下单、重复扣款等问题。3.简述使用Postman完成一次带Token接口自动化测试的步骤。答案:(1)在Collection中创建登录请求,在Tests脚本中提取返回的token并写入环境变量,例如pm.environment.set("token",jsonData.data.token);(2)为被测接口配置请求头,Authorization填写Bearer{{token}};(3)编写断言,校验HTTP状态码、业务码和关键字段;(4)通过CollectionRunner批量执行用例,或导出为集合文件并使用Newman集成到CI中运行。五、案例分析题(每题10分,共20分)1.某"订单查询"接口文档定义如下:-请求方式:GET/api/v1/order/{orderId}-必填参数:orderId,string类型-正常响应:HTTP200,Body为{"code":0,"message":"success","data":{"orderId":"1001","status":1,"amount":99.90}}问题:(1)请列出针对该接口设计功能测试用例时至少5个关注点。(2)当orderId不存在时,服务端返回"200+业务码1004"与"404+明确错误信息"两种方案,你更认可哪种?为什么?答案:(1)测试关注点包括:-正常查询:使用真实存在的orderId,校验HTTP状态码、业务码、响应结构与数据库数据的一致性;-参数校验:orderId为空、超长、含特殊字符、非数字字符串等异常输入;-资源不存在:orderId不存在或已删除时的返回结果是否符合预期;-权限控制:未携带token、token过期、查询他人订单等越权场景;-幂等性:重复查询同一订单多次,返回结果保持一致;-性能表现:接口响应时间是否在预期范围内。(2)更认可"404+明确错误信息"方案。理由:RESTful规范建议使用HTTP状态码表达资源层状态,资源不存在对应404,语义清晰,客户端可直接根据状态码区分"资源不存在"与"接口异常";再配合错误码便于程序化解析。而"200+业务码"将正常与异常全部包裹在200中,增加了客户端判断成本,还可能掩盖传输层错误。2.某电商系统提供"下单"接口:-请求方式:POST/api/v1/order-请求头:Authorization:Bearer{token}-请求体:{"productId":"P001","quantity":2}-响应体:{"code":0,"data":{"orderId":"SO20250001","totalPrice":199.80}}现要求实现该接口的自动化测试,支持多组商品数据,并输出测试报告。问题:请设计基于Python+pytest+requests的实现方案,说明关键步骤与代码思路。答案:(1)使用fixture(scope="session")实现登录并获取token,将带token的请求头封装为公共方法,供各用例复用;(2)将多组商品数据(商品ID、数量、预期总价)放入JSON或YAML数据文件,通过pytest的参数化功能实现数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025届四川省成都市邛崃市数学三下期中复习检测模拟试题含答案
- 2025届嘉兴市桐乡市三下数学期末学业水平测试模拟试题(含答案解析)
- 2026年化妆品行业个人消费报告:高端产品市场分析
- 2026年写字楼市场租赁市场细分研究报告
- 2026年虚拟现实行业市场趋势、产品创新、营销模式分析报告
- 2026年智能家居行业灰犀牛风险预测与应对措施报告
- 2026年互联网医疗行业发展与挑战报告
- 2026年能源行业门店客户拓展与复购策略报告
- 2026年民宿行业市场洞察与未来增长报告001
- 2026年生物制药行业研发动态及市场前景分析报告
- 浙江台州市十校联考2026-2027学年高一上学期11月期中考试化学试卷
- 2026年钢铁企业行业分析报告及未来五至十年行业发展报告
- 2026年扫黑除恶常态化试题及答案
- 给水用聚乙烯(pe)管道系统第部分管件
- 2025年国家电网有限公司客户服务中心招聘15人(第一批)笔试参考题库附带答案详解(3卷)
- 《膜结构工程消耗量标准(征求意见稿)》
- 成渝中线可行性研究报告
- 5.1《自然灾害与防灾减灾》教学设计-八年级地理上册人教版
- DL∕T 567.3-2016 火力发电厂燃料试验方法 第3部分:飞灰和炉渣样品的采取和制备
- CJ/T 106-2016 生活垃圾生产量计算及预测方法
- 美食绘画食品安全
评论
0/150
提交评论