01. 接口测试的分析和设计
2024年10月28日大约 4 分钟
01. 接口测试的分析和设计
UI功能测试和接口测试那个先执行?为什么
结论:接口测试先执行
原因:UI功能测试需要等待前端页面开发完成、后台接口开发完后且前端与后端联调完成。
UI功能测试与接口测试的区别?
UI功能:功能调用(前端js、服务器端)+ 页面布局 + 兼容
接口测试:完整的测试服务端功能验证
UI功能测试和接口测试那个更高效?--为什么
结论:接口测试更高
原因:接口测试只测服务端功能以及没有多页面操作因素。
1. 接口测试用例的执行方式
1. 手工测试执行
- 在项目后端开发完成后(前端可能还没有开发完成),可以进行接口测 试用例的手工执行,保证尽早的发现问题
- 如果项目的前后端同时开发完成,一般直接会进行系统测试用例的执行,只使用接口来辅助测试一些系统测试时无法模拟的异常场景
2. 自动化测试执行
- 为了防止开发修改代码时引入新的问题,通常使用接口自动化的方式来看护代码的质量
- 由于后端的需求变化比前端小,所以公司通常优先进行接口自动化,然后再考虑UI自动化
2. 项目接口的特殊点
1. 项目接口的特殊点
复杂的业务逻辑
- 金融项目涉及较多的专业术语
- 金融项目业务关联性比较强
- 金融项目涉及到财务知识
依赖于第三方接口(Mock完整模拟)
- 第三方资金托管是指为P2P平台开发定制账户系统,提供系统外
- 包运营服务
- 为P2P平台提供支付和结算服务
- 同时保障用户资金由银行全程监管
接口加解密
- 手机端的接口数据进行了加密处理
- 发送请求之前对请求参数进行加密
- 得到接口响应数据后需要进行解密
3. 编写接口测试用例
1. 接口测试范围
- 重点测试投资流程相关的接口,接口梳理如下:
1、注册登录 注册图片验证码接口 注册手机验证码接口 注册接口 登录接口 查询登录状态接口 2、认证开户充值 认证接口 查询认证状态 请求后台开户接口 三方开户接口 请求充值验证码接口 请求后台充值接口 请求三方充值接口 3、投资 请求后台投资接口 三方投资接口 4.投资业务 注册图片验证码接口 注册手机验证码接口 注册接口 登录接口 认证接口 请求后台幵户接口 三方幵户接口 请求充值验证码接口 请求后台充值接口 请求三方充值接口 请求后台投资接口 三方投资接口
2. 接口测试流程
需求评审
参与人员:开发、测试、产品 目的: 1、熟悉项目有哪些功能 2、站在不同角度对需求进行查漏补缺 3、各角色对需求理解一致
测试计划与⽅案
核心: 测什么 谁来测 怎么测 其他: 提测标准 上线标准 风险控制
分析API⽂档
1、测试接口依赖的数据是否都明确(请求、响应) 2、分析接口之间依赖关系及关联 3、参数规则(类型、必填、长度、等等)说明 项目难点: 1、认证接口请求头使用multipart/form-data 2、三方开户、三方充值、三方投资都需要调用Mock接口 请求url:来源响应数据action得值 请求参数和值:所有input标签中name属性值为参数名,value属性值为参数值。
编写⽤例
搭建环境(项⽬环境、测试⼯具环境)
编写脚本
执⾏脚本
缺陷管理
测试报告
4. 接口用例设计方法
1. 单接口测试
- 正向测试
- 必填参数组合 P1
- 必填 + 非必填组合
- 全部参数组合 P1
- 有关联关系参数组合 P1
- 其他参数组合 P3
- 反向测试
- 功能异常 P2(覆盖反向需求、覆盖响应错误码)
- 数据异常 P2(空、类型不符、长度不符)
- 参数异常 P3(多参、少参、无参)
2. 业务场景测试
- 从功能业务用例转化 P0
- 针对业务功能用例中操作步骤,分析对应的接口请求
优先级:P0 > P1 > P2 > P3
3. 使用工具
- 可视化工具: postman、jmeter
- 代码:python + request + unittest
5. 编写接口测试用例
依据接口文档
1. 测试点提取
- 接口API文档
- 测试点提取-业务测试点.xmind