测试分类 | 具体测试项 | 测试内容 | 测试方法 |
文档测试 | 接口清单 | 接口清单是否完整,正确,包含提供给开发者的协议所有字段的定义和解释 | 人工检查 |
更新说明 | 要说明新增,删除的接口定义 | ||
Demo示例 | 显示如何调用接口实现具体的功能 | ||
开发文档 | 有明确定义本SDK的大小,性能指标 | ||
SDK大小 | 符合设计规格标准(有要求SDK大小时确认) | ||
功能测试 | 界面测试 |
提供界面的正确性是否达到设计文档意图并易于理解(带UI界面的SDK) |
人工检查 |
接口测试 |
1、校验输入参数的各种输入情况能正确处理,返回结果(参数,返回值)和协议一致 2、测试场景完整。 请求成功或失败都能按预期处理;失败场景错误码提示和返回正确 3、对必传字段有校验是否为空的情况 4、响应请求发送次数正确,不存在多发或者少发。是否有回调,符合设计预期 5、删除,新增接口后,对老接口功能没有影响 6、输入异常(空值、非设定值、超出限定值、长时间占用、轮询等) 7、服务端返回异常 |
自动化(Demo、客户端脚本) |
|
数据测试 |
1、各个场景下的数据是否正确缓存和存储 2、数据打点上报测试 |
人工检查 | |
权限测试 | 针对SDK的权限进行授权、取消 | 人工检查 | |
混淆包测试 | 如果SDK需要提供混淆包,需要进行混淆包的基本功能测试(S+A用例) | 人工检查 | |
自动化测试 | 单元测试、脚本测试 | 自动化工具 | |
多语言测试 | 新增词条、修改词条的多语言测试(不涉及海外业务可选) | 人工/自动化 | |
性能测试 | 性能监控 |
1、SDK初始化耗时、流畅度、I/O监控、SQLite监控、卡顿 2、内存泄漏 3、重要场景内存测试 4、SDK流量消耗 5、SDK并发性能:接口并发性能,并发压力测试 |
人工/自动化 |
电流测试 |
1、大版本必做;迭代版本组内评估。 2、SDK工作电流与历史版本的比对 |
人工(电流仪) | |
稳定性 |
1、考察业务场景在一定压力下,持续运行一段时间(10小时),接口功能和设备资源占用无异常(针对有UI界面的SDK) 2、需要有防止自身服务被频繁调起的防呆机制 3、调用方测试SDK写入日志事件足够多时,日志文件大小是否可控 |
自动化(Demo) |
|
兼容测试 | 设备平台兼容 |
1、Android 系统版本兼容、ColorOS版本兼容 2、分辨率、屏幕大小、横竖屏、字体兼容 3、网络环境兼容(无网、弱网、WIFI、网络切换) 4、新旧数据兼容( 用户数据:旧版本未登陆,旧版本登陆无操作,旧版本有数据) 5、APP兼容(强依赖APP需兼容APP所有版本,无强依赖的验证APP基本功能是否正常) |
人工/自动化 |
监控平台 | 线上异常率监控 |
监控平台 |
人工/自动化 |
发布测试 | 发布检查测试 | SDK检查默认环境Release、日志是否可关闭、是否有依赖snapshots包 | 人工检查 |
