天机阁

自动化测试分类

2022-07-16 · 5 min read
自动化测试

后台&Web 测试用例分类

通用术语 说明
A0 指在与外部环境资源隔离的前提下,对程序最小单元(即一个函数或方法)的自动化功能逻辑测试。外部环境资源包括但不限于本地文件系统、内外网络与服务。建议单用例执行耗时上限在 200ms 以内(SDK同样适用)
A1 对程序的方法、类进行测试;注重服务内部模块间的集成验证,除依赖代码以外,还可以依赖本地资源(“本地”即访问网络为 localhost,依赖的本地资源包括本地数据库、本地文件系统、同进程 mock 或者本地测试替身等),测试用例和被测服务在同进程,建议单用例执行耗时上限在 1s 以内(SDK 同样适用)。
A2 对服务接口进行测试,以及对单服务多接口串联测试,建议全部依赖真实链路或者部分依赖测试替身(但不鼓励);测试用例和被测对象处于不同进程;需要部署启动被测服务;建议单用例执行耗时上限在 10S 以内。
A3 对多服务多接口串联完成对某个场景的测试,主要是模拟客户端(如 app、H5、web)调用,部署真实服务、全部依赖真实下游的全链路端到端测试,测试用例和被测对象均处于不同进程,建议单用例执行耗时在 1S 以上且控制在 3 分钟以内。

A0 图示

A1 图示

A2 图示

A3 图示

A0-A3 区别

测试层级 验证范围 单用例执行耗时上限(建议) 稳定性 测试用例与被测对象 网络依赖 服务依赖 数据库依赖 需要部署启动被测对象 测试类型
A0 方法、类 <=200ms 同进程/同机器 不依赖 不依赖 不依赖 不需要 白盒测试
A1 服务内部模块间集成 <=1S 同进程/同机器 建议依赖 Localhost 网络 建议依赖 localhost 测试替身 建议依赖 localhost 数据库 不需要 白盒测试
A2 单服务接口 <=10S 不同进程(同/不同机器) 依赖 建议依赖非替身 访问网络数据库 需要 黑盒测试
A3 多服务多接口串联场景 >=1S 建议控制在 10 分钟以内 不同进程/不同机器 依赖 依赖非替身 访问网络数据库 需要

终端测试用例分类

通用术语 说明
A0 指在与外部环境资源隔离的前提下,对程序最小单元(即一个函数或方法)的自动化功能逻辑测试。外部环境资源包括但不限于本地文件系统、内外网络与服务。建议单用例执行耗时上限在 200ms 以内(SDK 同样适用)。在运行时基本不依赖运行平台和组件,不在真机或模拟器上启用 Application。说明:iOS 执行单元测试时,只是一次性加载并不需要真正启动 App 运行。
A1 对程序的方法、类进行测试;注重服务内部模块间的集成验证,除依赖被测代码以外,还可以依赖本地资源(“本地”即访问网络为 localhost,依赖的本地资源包括本地数据库、本地文件系统、同进程 mock 或者本地测试替身等),测试用例和被测服务在同进程,建议单用例执行耗时上限在 1s 以内(SDK 同样适用)。在运行时可以依赖运行平台和组件,不在真机或模拟器上启用 Application。同时由于终端本地资源对用例运行影响因素较多,建议谨慎使用本地资源。说明:iOS 执行单元测试时,只是一次性加载并不需要真正启动 App 运行。
A2 采用非界面场景驱动用例的方式,用例依赖真机或模拟器的运行环境。建议单用例执行耗时上限在 1 分钟以内。
A3 采用界面场景驱动用例的方式,用例依赖真机或模拟器的运行环境。建议单用例执行耗时上限在 3 分钟以内。

A0-A3 区别

测试层级 验证范围 单用例执行耗时上限(建议) 稳定性 需要部署启动被测对象
A0 方法、类 <=200ms 不需要
A1 方法、类、接口 <=1s 不需要
A2 功能场景 <=1min 需要
A3 功能场景 建议控制在 3mins 以内 需要