自动化测试
type
status
date
slug
summary
tags
category
difficulty
icon
password
一、自动化测试
1.1 自动化测试的意义
自动化测试是将人工测试转换为机器执行的过程,包括单元测试、接口测试和场景自动化等测试手段。
二、分层自动化
2.1 三层结构模型
系统可分为三层:业务入口、逻辑实现、数据存储。
2.2 分层自动化
根据被测对象层级,自动化测试可分为:APP端、WebUI、链路级接口、单应用级接口、单元测试和数据校验。
2.2.1 WebUI / APP端自动化
关注业务操作流程的完整性和正确性,主要特点:
- 测试对象是用户界面
- 黑盒测试,关注系统响应
- 测试用例
- 通过模拟操作实现
- 用例稳定性受多因素影响
2.2.2 链路级接口测试
测试业务入口层接口的完整调用路径,包括跨应用调用、中间件和DB调用。特点:
- 测试外层业务接口
- 关注返回结果
- 需模拟接口入参
- 稳定性受链路影响
2.2.3 单应用级接口测试
关注单个应用内部逻辑,可测试更底层接口。
与链路级测试区别:单应用级mock外部调用,关注内部逻辑;链路级实际执行调用,关注最终结果。
- 测试接口
- 需要mock能力
- 关注逻辑和结果
- 测试粒度更细
- 依赖平台工具
- 稳定性较高
2.2.4 单元测试
针对程序最小单位的测试,关注单个方法的逻辑正确性。
- 测试程序单元
- 需要方法级mock
- 白盒测试
- 使用测试框架
- 稳定性高
2.2.5 数据校验
验证已有数据是否符合业务规则,用于及早发现问题。
- 验证数据字段
- 基于规则测试
- 用于问题发现
2.2.6 总结
从单元测试到UI自动化,测试粒度逐渐增大,问题修复成本随之提高。建议提高测试覆盖度,尽早发现问题。
- 作者:Episkey
- 链接:https://episkey.top/article/autoTest
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。