第2章 测试范围与边界定义
适用场景
本流程适用于 Solution Design 阶段首次对系统进行原型测试之前,需要明确测试范围边界、功能模块边界、外部依赖边界以及边界条件分类的所有项目。典型场景包括:
- 微服务架构中服务间接口测试的切分
- 遗留系统改造时的功能模块解耦
- 第三方 API 集成时的依赖范围界定
- 异常与安全边界验证(如输入校验、超时、空数据)
前置条件
- 已获得 Solution Design 文档(含系统架构图、模块清单)
- 已完成 原型设计 并通过初步评审
- 项目组已明确 测试环境 与 外部 mock 服务 的可用性
- 团队已约定 边界术语(如:“系统边界”指进程边界,“模块”指业务子域)
操作步骤
- 识别系统边界:从架构图中标记出与外部系统、用户、定时任务、消息队列的所有交互点,形成
系统边界清单。 - 划分功能模块:依据业务域拆分为独立可测子模块,每个模块必须具有内聚的输入/输出接口。
- 识别外部依赖边界:列出所有第三方服务、数据库、缓存、文件系统等,标注是“强依赖”还是“弱依赖”。
- 分类边界条件:对每个交互点按 输入边界、输出边界、异常边界、时间边界 四类进行标记。
- 形成边界闭环:将边界条件映射到对应的测试用例 tag,确保每一个边界条件至少被一个测试用例覆盖。
输入输出物
| 输入物 | 输出物 |
|---|---|
| Solution Design 文档 | 系统边界清单(含模块列表) |
| 原型设计稿 | 外部依赖边界表格 |
| 架构部署图 | 边界条件分类矩阵 |
| 外部 API 文档 | 边界闭环验证清单 |
责任边界
- 解决方案架构师:提供准确的系统边界和模块划分,确认外部依赖列表。
- 测试工程师:完成边界条件分类,编写边界测试用例并关联 tag。
- 开发工程师:确认外部依赖的 mock 实现方案,配合修复边界异常。
- 项目经理:审核边界闭环清单,确保无遗漏。
记录材料
| 记录项 | 模板/格式 | 存放位置 |
|---|---|---|
| 系统边界清单 | Excel / Confluence 表格 | 项目共享目录 |
| 外部依赖边界表 | Markdown 文件 | Git 仓库 /docs/boundary |
| 边界条件分类矩阵 | Jira 自定义字段 / 测试管理工具 | 测试用例库 |
| 边界闭环验证日志 | 测试执行报告 | CI/CD 产物 |
异常处理
异常场景 1:系统边界模糊
如多个模块共享同一外部接口,应归为“共享边界”并增加依赖标识,不可遗漏。
处理措施:联合架构师、开发、测试进行三方边界对齐会议,输出补充说明文档。
如多个模块共享同一外部接口,应归为“共享边界”并增加依赖标识,不可遗漏。
处理措施:联合架构师、开发、测试进行三方边界对齐会议,输出补充说明文档。
异常场景 2:边界条件与测试用例不匹配
边界闭环验证时发现某边界条件无对应测试用例,则回退至步骤 4 重新分类。
处理措施:在测试管理工具中补建用例,并更新边界条件分类矩阵。
边界闭环验证时发现某边界条件无对应测试用例,则回退至步骤 4 重新分类。
处理措施:在测试管理工具中补建用例,并更新边界条件分类矩阵。
验收标准
- 系统边界清单涵盖所有 进程间、服务间、用户界面 交互点。
- 每个功能模块的 输入/输出接口 在文档中明确标出。
- 外部依赖边界表包含 依赖名称、类型、协议、版本、强/弱属性。
- 边界条件分类矩阵内每一条边界条件都有唯一的 tag 并能回溯至测试用例。
- 边界闭环验证覆盖率 = 100%(所有边界条件至少一个用例)。
实践要点
• 边界条件分类时,每个交互点至少包含一种输入边界(合法值、越界值、空值)和一种异常边界(网络超时、返回错误码)。
• 建议使用测试管理工具的 标签(tag) 功能,将边界条件 tag 与用例 tag 自动关联,便于闭环审计。
• 外部依赖边界表中,若某个依赖同时被多个模块使用,应在备注列标注“共享依赖”,并评估单点故障影响。
• 边界条件分类时,每个交互点至少包含一种输入边界(合法值、越界值、空值)和一种异常边界(网络超时、返回错误码)。
• 建议使用测试管理工具的 标签(tag) 功能,将边界条件 tag 与用例 tag 自动关联,便于闭环审计。
• 外部依赖边界表中,若某个依赖同时被多个模块使用,应在备注列标注“共享依赖”,并评估单点故障影响。