域·测试
GD-I
域组基础进阶高级14 节点
§1组简介
组目录:本质层方法论层技术实践层域·概念与需求域·架构设计域·实现与构造域·测试域·部署域·运维域·演化与弃用域·质量属性域·团队与康威域·方法论主干域·跨域横切·质量属性横切·技术债横切·团队与康威案例层
本组 14 个节点,类型为 域组,域 I,覆盖阶段 基础 / 进阶 / 高级。
§2成员节点目录
| 节点 ID | 名称 | 层/来源 | 阶段 | 简介 |
|---|---|---|---|---|
| ESS-I-01 | 测试作为验证与反馈机制本质 | 本质 essence | 基础 | 软件测试是以发现缺陷、评估质量为目的的活动集合;其本质不止于事后验证——它同时为开发提供持续反馈,使团队能在变更中保持正确性,因此测试是质量保障与支持演进的双重机制。 |
| ESS-I-02 | 可测试性本质 | 本质 essence | 基础 | 可测试性说的是软件在多大程度上容易被证明有缺陷,而不是它究竟有没有缺陷。这一定位把它从测试活动的属性挪到了被测制品的属性上:同一支测试团队、同一套方法与工具,面对可测试性不同的两份系统,建立受控情境、读取内部状态、取得稳定反馈的代价会相差数量级。它由结构赋予,属于设计期就应当确定的性质,事后很难补齐;模块边界与依赖方向一旦改变,同一份功能代码所需的测试投入就会显著变化。由此可以推出它的两个容易混淆之处。其一,它衡量的是验证成本而非正确性本身,一个可测试性极差的系统也可能几乎没有缺陷,反过来测试写得很顺手也并不等于测试已经做够。 |
| ESS-I-03 | 错误、缺陷与失效 | 本质 essence | 进阶 | 错误是人的行为产生的不正确结果,缺陷是制品中导致其偏离预期行为的瑕疵,失效是系统运行时表现出的与规定行为不一致;三者构成「错误→缺陷→失效」的因果链,是测试活动的认知对象。 |
| ESS-I-04 | 测试的不可穷尽性 | 本质 essence | 进阶 | 测试只能证明缺陷的存在、无法证明其不存在;由于输入、状态与执行路径的组合空间在现实中不可穷尽,测试永远是抽样活动,因此测试策略的核心不是穷尽验证,而是基于风险选择最有价值的样本。 |
| MTH-I-01 | 测试层次 | 方法论 methodology | 基础 | 测试层次是按开发生命周期阶段组织并一起管理的测试活动分组,通常从组件级逐层上升到系统级与验收级;每个层次针对不同的测试对象与关注点,回答不同的问题,并对应不同的缺陷类型与执行主体。 |
| MTH-I-02 | 测试类型 | 方法论 methodology | 基础 | 测试类型是与特定质量特性相关的一组测试活动,如功能测试与非功能测试,也可按是否依赖内部结构分为黑盒、白盒与经验型;大多数测试类型可应用于每一个测试层次,层次与类型是两个正交的坐标。 |
| MTH-I-03 | 测试驱动开发 | 方法论 methodology | 进阶 | 测试驱动开发(TDD)是先写测试、再写实现、随后重构的开发技术,核心为红-绿-重构三步循环:先写一个失败的测试明确目标,再以最小实现使其通过,最后在测试保护下改善结构。 |
| MTH-I-04 | 测试金字塔与反模式 | 方法论 methodology | 进阶 | 测试金字塔是按粒度与数量组织自动化测试的模型:底层应有多得多的快速隔离单元测试,中层为适量服务/集成测试,顶层为少量端到端测试;倒置的金字塔(冰淇淋甜筒)与缺失中间层的沙漏是典型反模式。 |
| MTH-I-05 | 测试替身与测试策略 | 方法论 methodology | 进阶 | 测试替身是在测试中替换生产对象的任何协作对象的泛称,包括哑元、伪造、桩、监视与模拟五类;按需要隔离的程度选择替身类型,并控制替身的使用范围,是平衡测试速度、确定性与保真度的关键策略。 |
| MTH-I-06 | 质量门控与持续集成 | 方法论 methodology | 进阶 | 持续集成要求开发者频繁把改动合并回主线,并由自动化构建与测试验证;质量门控则用一组在分析时度量的条件判定制品是否可发布,任一条件不满足即阻断构建或合并,把测试与质量检查制度化为交付闸门。 |
| MTH-I-07 | 软件测试过程模型 | 方法论 methodology | 高级 | 软件测试过程模型把测试描述为可治理、可管理、可实施的分层过程:组织级制定测试方针与策略,管理级规划、监控与收尾测试项目,动态级设计、实现、执行并报告具体测试,可配合不同开发生命周期使用。 |
| TEC-I-01 | 持续集成服务与流水线 | 技术实践 technology | 进阶 | 持续集成服务与流水线是把「频繁合并回主线、每次合并自动构建并运行测试」制度化的技术载体:由单一代码主线、自动化构建与测试执行、结果回传与即时反馈构成,使集成错误在产生后最短窗口内暴露。 |
| TEC-I-02 | 关键字驱动测试框架 | 技术实践 technology | 高级 | 关键字驱动测试(KDT)是 ISO/IEC/IEEE 29119-5 定义的一种自动化测试框架范式:把测试操作抽象为可复用的关键字,测试用例由「关键字+参数」序列描述,驱动层负责解释执行,从而将测试意图与底层脚本实现分离。 |
| TEC-I-03 | xUnit 测试框架族 | 技术实践 technology | 进阶 | xUnit 测试框架族是按「测试类—测试方法—断言—夹具」结构组织并自动执行单元测试的一类框架,命名源自 JUnit 及其衍生家族;它把测试书写、发现、执行与报告统一为开发者可直接使用的代码骨架,是单元测试与测试驱动开发的主要工具载体。 |
§3组内关系图
前置依赖实现依据推导案例印证对比冲突
§4学习路径提示
本组内存在 4 条前置依赖边(prerequisite),推荐先掌握前置知识点,再进入依赖它的节点。
推荐阅读顺序(拓扑序)
错误、缺陷与失效 → 测试驱动开发 → 质量门控与持续集成 → 持续集成服务与流水线 → 关键字驱动测试框架 → xUnit 测试框架族 → 测试替身与测试策略 → 测试金字塔与反模式 → 软件测试过程模型 → 测试层次 → 测试类型 → 可测试性本质 → 测试作为验证与反馈机制本质 → 测试的不可穷尽性
- 错误、缺陷与失效 → 测试作为验证与反馈机制本质错误-缺陷-失效概念是测试活动的认知对象
- 可测试性本质 → 测试作为验证与反馈机制本质可测试性是有效测试得以进行的前提
- 测试作为验证与反馈机制本质 → 测试的不可穷尽性认识测试方能理解其不可穷尽性
- 测试层次 → 测试类型测试层次是应用测试类型的结构前提