测试风险清单失效,往往源于缺少更新触发条件和明确责任人:清单在项目启动时建好,之后长期不动,直到发布前才发现风险已经变化。本文围绕字段定义、更新触发、维护流程、角色分工和完成检查五部分,给出一套可嵌入现有评审节奏的维护机制。清单条目需要状态流转和评审记录时,可借助 ONES 的工作项与文档管理承载。
要点总览(TL;DR)
- 测试风险清单以风险条目为最小单元,先固定编号、描述、触发条件、影响范围、可能性与影响程度、应对措施、责任人、状态、验证方式、关闭依据等字段,后续更新才有统一口径。
- 更新由两类机制驱动:需求变更、依赖调整、缺陷暴露、环境人员变动等临时触发,以及测试计划评审、里程碑评审、发布评审和定期巡检等固定时点。
- 维护流程分识别登记、评估确认、制定应对、跟踪复核、关闭归档五步,每步有输入、动作、输出和完成标志;无法闭环的风险转出并注明去向。
- 清单维护人负责流程推进与状态时效,风险责任人负责单条应对与验证;接受类风险和发布相关关闭决策由产品负责人确认。
- 用字段完整性、状态时效性、高风险覆盖、评审可追溯、关闭依据、转出去向等检查项判断维护是否到位,出现高风险无责任人、状态无证据等情况视为失效需返工。
清单先定字段:每条风险要能判断、能跟踪
更新和维护的前提是清单有统一载体。风险清单以风险条目为最小单元,字段固定后,不同人补录、复核时才能按同一口径判断风险是否成立、是否关闭。字段不必多,但要覆盖“是什么、何时触发、影响多大、谁来处理、现在到哪一步、怎么算结束”。
| 字段 | 填写口径 | 示例 |
|---|---|---|
| 编号 | 唯一且不复用,便于评审和缺陷关联时引用 | RISK-2024-017 |
| 风险描述 | 写成可判断的句式:在什么条件下,哪个对象会出现什么后果 | 订单服务依赖的第三方支付接口在压测环境下响应超时,可能导致支付链路回归无法在计划窗口内完成 |
| 触发条件 | 说明什么事件或状态出现时该风险成立或需要重估 | 压测环境接口平均响应超过 2 秒,或第三方发布变更通知 |
| 影响范围 | 受影响的功能、模块、版本或交付节点 | 支付、退款;本迭代发布节点 |
| 可能性 | 团队自定分级,如高/中/低,并写明判断依据 | 中:历史压测中偶发超时 |
| 影响程度 | 团队自定分级,如严重/较大/一般 | 严重:阻塞发布 |
| 应对措施 | 具体动作,不用“加强关注”一类表述 | 提前与第三方确认压测窗口;准备降级开关验证用例 |
| 责任人 | 对应对措施和验证结果负责的单一人员 | 支付模块测试负责人 |
| 状态 | 按统一取值推进,见下表 | 应对中 |
| 验证方式 | 用什么测试动作或证据确认风险已缓解 | 压测报告、降级开关回归结果 |
| 关闭依据 | 关闭时填写的证据或决策记录 | 压测通过记录;或发布评审接受决策纪要 |
风险描述要避免“接口可能不稳定”“质量存在隐患”这类笼统表述。可判断的句式通常包含条件、对象和后果三要素,读者据此能判断风险是否成立,也能在关闭时对照验证。
可能性与影响程度的分级口径由团队统一,取值示例仅作参考。建议在清单说明页写明每级含义,例如可能性“高”指在本次迭代内大概率发生,“中”指有历史迹象但不确定,“低”指仅在特定条件下出现。影响程度按是否阻塞发布、是否影响核心链路、是否只影响边缘功能划分。
| 状态 | 含义 | 进入下一状态的条件 |
|---|---|---|
| 待评估 | 已登记,尚未确认是否成立 | 完成评估并给出结论 |
| 已确认 | 风险成立,尚未开始应对 | 应对措施与责任人确定 |
| 应对中 | 措施执行中 | 措施完成并提交验证证据 |
| 已缓解 | 验证通过,剩余风险可接受 | 关闭依据齐备或评审确认 |
| 已关闭 | 风险闭环,记录归档 | — |
| 已转出 | 不在本清单闭环,移交其他台账 | 注明接收方与去向 |
更新触发条件:什么时候必须改清单
清单长期不动通常有两种极端:一是只在启动时登记,之后无人复核;二是每次风吹草动都改,条目膨胀且状态混乱。可行的做法是把临时触发和固定时点结合,临时触发保证及时性,固定时点防止遗漏。
| 触发事件 | 更新动作 | 完成标志 |
|---|---|---|
| 需求或范围变更 | 复核受影响条目的影响范围与等级,补录新增风险 | 变更单关联的风险条目已更新 |
| 架构与依赖调整 | 重估依赖方相关风险,必要时新增条目 | 架构变更评审记录中附风险复核结论 |
| 缺陷或线上问题暴露新风险 | 按补录规则登记,写明来源缺陷编号 | 新条目完成初判分级并指定责任人 |
| 测试计划评审 | 复核清单与测试范围的对应关系 | 评审纪要记录清单版本与结论 |
| 里程碑评审 | 逐条复核状态与剩余风险 | 高风险条目均有最新应对进展 |
| 发布评审 | 确认接受类风险的决策人与依据 | 发布决策记录引用清单条目 |
| 环境、工具链、人员变动 | 重估相关条目的可能性与影响程度 | 受影响条目完成等级调整说明 |
| 定期巡检 | 按固定周期检查长期未变更条目 | 巡检记录留存,异常条目进入复核 |
缺陷暴露新风险时,补录规则要明确:由发现人登记,测试负责人初判分级,涉及研发侧的风险同步给开发负责人确认。补录不是把每个缺陷都变成风险,只有可能影响测试范围、进度或发布判断的问题才进入清单,来源缺陷编号写入条目便于追溯。
定期巡检建议与迭代节奏对齐,例如每个迭代结束前检查一次。巡检重点看两类条目:长期停留在“已确认”或“应对中”的,以及等级为高但长时间无进展的。临时触发负责及时响应,巡检负责兜底,两者缺一不可。
维护流程:从识别到关闭的操作步骤
把更新拆成五步,每步都有输入、动作、输出和完成标志,维护人据此推进,评审时据此核对。
| 步骤 | 输入 | 动作 | 输出 | 完成标志 |
|---|---|---|---|---|
| 识别与登记 | 需求文档、架构说明、缺陷记录、评审意见 | 登记人按字段填写,初判可能性与影响程度 | 状态为“待评估”的条目 | 编号、描述、触发条件齐全 |
| 评估与确认 | 待评估条目、相关设计与测试信息 | 测试负责人组织评估,开发负责人确认技术判断,产品负责人确认业务影响 | 评估结论与分级 | 状态推进为“已确认”或关闭为不成立 |
| 制定应对 | 已确认条目 | 在规避、降低、转移、接受中选择,并写明对应测试动作 | 应对措施、责任人、验证方式 | 措施可执行,责任人确认 |
| 跟踪与复核 | 应对中的条目、执行证据 | 按评审时点推进状态,重估剩余风险 | 状态更新与重估记录 | 高风险条目在每次评审均有进展说明 |
| 关闭与归档 | 验证证据或决策记录 | 核对关闭依据,填写结论;无法闭环的转出 | 已关闭或已转出条目 | 关闭依据可查,转出去向明确 |
四类应对对应不同的测试动作。规避是调整方案消除风险来源,例如更换不稳定的依赖;降低是缩小发生概率或影响,例如增加回归范围和降级验证;转移是把影响交给其他方承担,例如由供应商提供保障并约定验证节点;接受是记录决策后不再投入额外措施,此时必须写明决策人、依据和接受范围,避免事后无人认账。
状态推进要有证据支撑。“已缓解”不能只凭口头确认,需附验证方式对应的结果,如压测报告、回归记录或评审纪要。关闭依据可以是验证通过记录,也可以是发布评审的接受决策。无法在本清单闭环的风险,例如转为线上运维监控事项,应转出并注明接收台账,原条目保留去向,避免风险凭空消失。
清单条目需要状态流转、责任人和评审记录时,可以放进 ONES 的工作项与文档中管理:条目作为工作项推进状态,评审结论沉淀在文档里,测试用例与需求、任务的关联也能让风险来源更容易追溯。工具承载的是记录和流转,机制本身仍按上述步骤执行。
角色与交付物:谁改、谁审、谁签字
维护失效的常见原因是“大家都觉得有人管”。需要区分两个角色:清单维护人负责流程推进和状态时效,风险责任人负责具体应对与验证,两者可以由不同人担任。
| 角色 | 职责 | 交付物 |
|---|---|---|
| 测试负责人 | 担任清单维护人,组织评估与评审,把控状态时效 | 清单版本、评审纪要、巡检记录 |
| 测试工程师 | 识别并登记风险,执行测试动作,提交验证证据 | 风险条目、测试结果、验证记录 |
| 开发负责人 | 确认技术类风险的成立与等级,落实技术应对 | 技术评估结论、修复或调整说明 |
| 产品负责人 | 确认业务影响,对接受类风险做决策 | 影响确认意见、接受决策记录 |
| 风险责任人 | 对单条风险的应对措施和验证结果负责 | 应对进展、验证证据、关闭申请 |
评审会议的决策权限要事先约定:等级调整由测试负责人与开发负责人共同确认;接受类风险和发布相关的关闭决策由产品负责人签字;转出条目由清单维护人确认去向。会议参与角色按评审类型区分,测试计划评审以测试与开发为主,发布评审需产品负责人参加。
各角色在更新周期内的交付物应与评审时点对齐:测试工程师在测试计划评审前完成新增条目登记,开发负责人在里程碑评审前提交技术风险进展,产品负责人在发布评审前完成接受类风险决策,清单维护人在每次评审后更新清单版本并留存纪要。
示例:一次版本迭代中的清单更新过程
以下为演示情景,用于说明清单如何随测试推进而更新,不代表真实项目数据。
迭代启动时,测试负责人根据需求文档和架构说明登记初始风险,例如“新接入的短信服务在测试环境未完成联调,可能导致验证码相关用例无法执行”,初判可能性中、影响程度较大,状态为待评估。测试计划评审中,开发负责人确认联调排期,产品负责人确认该功能属于本迭代必交付范围,条目推进为已确认,责任人为短信模块测试工程师,应对措施为提前申请联调环境并准备模拟通道验证用例。
测试执行中发现新风险:模拟通道与真实通道的返回码存在差异,部分异常分支未覆盖。发现人按补录规则登记新条目,关联来源缺陷编号,测试负责人初判为可能性高、影响程度一般,状态待评估。当日评估后确认成立,应对措施为补充异常分支用例并安排真实通道抽测,状态进入应对中。
发布前评审中,清单维护人逐条复核。短信联调条目已提交联调通过记录,验证方式对应的证据齐备,推进为已缓解并关闭;异常分支条目完成补充用例和抽测,剩余风险为真实通道极端场景未覆盖,产品负责人确认接受并记录决策依据,条目关闭。另有一条“第三方对账文件格式可能调整”的风险,本迭代无法闭环,转出至线上运维监控台账并注明接收方。
发布后,清单维护人归档本次迭代清单版本,巡检记录中标注转出条目的跟踪责任,下一迭代启动时作为输入复核。
完成检查:清单维护是否到位
维护机制是否有效,可以用一张检查表逐项核对。检查在每次评审后和迭代结束时执行,由清单维护人组织。
| 检查项 | 通过标准 |
|---|---|
| 字段完整性 | 所有条目必备字段无空缺,风险描述为可判断句式 |
| 状态时效性 | 无长期停留在待评估或已确认且无说明的条目 |
| 高风险覆盖 | 高等级条目均有应对措施、责任人和验证方式 |
| 评审可追溯 | 每次清单变更能对应到评审纪要或触发事件记录 |
| 长期未变更条目 | 超过一个巡检周期未变更的条目已完成复核并留痕 |
| 关闭依据 | 已关闭条目均附验证证据或决策记录 |
| 转出去向 | 已转出条目注明接收方,无悬空条目 |
以下情况视为维护失效,需要返工:高风险条目缺少责任人或应对措施;状态推进无证据支撑;评审记录与清单版本对不上;转出条目无去向;连续多个巡检周期未做复核。出现任一项,清单维护人应组织补正,并在下一次评审中说明整改结果。
检查的目的在于让清单持续可用,条目数量本身不说明问题。一份条目不多但状态准确、依据齐全的清单,比一份条目繁多却长期不更新的清单更能支撑发布判断。
常见问题
清单条目不多,是否说明风险识别做得不够?
条目数量本身不说明维护质量。判断标准是条目状态是否准确、关闭依据是否齐全、高风险是否都有应对措施和责任人。一份条目不多但每条都能对应到具体触发事件和验证证据的清单,比条目繁多却长期不更新的清单更能支撑发布判断。若担心遗漏,可在测试计划评审时对照测试范围逐项核对,而不是靠增加条目数量来覆盖。
临时触发和定期巡检冲突时,以哪个为准?
两者分工不同:临时触发保证及时性,事件发生后按对照表启动更新;定期巡检负责兜底,检查长期未变更或长期停留的条目。事件发生时先按临时触发处理,巡检时再统一复核状态与等级。若同一风险在巡检前已被临时触发更新,巡检记录中注明即可,不重复登记。
接受类风险关闭后,后续还需要跟踪吗?
接受类风险关闭时须记录决策人、依据和接受范围。关闭不等于消失,若后续出现触发条件变化,例如依赖方发布变更或线上出现相关问题时,应重新登记或重估原条目。团队可在巡检时抽查已关闭的接受类条目,确认接受前提是否仍成立。
风险转出到其他台账后,原清单还要保留记录吗?
需要保留。转出条目应注明接收方与去向,原条目保留在清单中,状态为已转出。这样在评审和巡检时能追溯风险去向,避免风险凭空消失。接收台账的跟踪责任由接收方承担,清单维护人在巡检记录中标注转出条目的跟踪情况即可。
清单条目需要状态流转和评审记录时,可以用什么方式承载?
可以把风险条目作为工作项管理状态、责任人和进展,评审结论沉淀在文档中。ONES 的测试管理支持测试用例与需求、任务关联,测试计划与迭代关联,缺陷可在测试与研发团队间流转,便于把风险来源与测试执行记录对应起来。具体配置方式需结合团队实际部署核验。
