不灭的焱

革命尚未成功,同志仍须努力 下载Java21

作者:AlbertWen  添加时间:2026-07-15 19:57:13  修改时间:2026-07-25 23:03:34  分类:04.运维体系  编辑

目录

这四个值的设计,是为了覆盖发布前测试可能出现的四种完整状态:

测试完成且没有阻塞问题       → 已通过
测试完成但仍有可接受的问题   → 有条件通过
测试完成但存在阻塞问题       → 未通过
本次变更不需要功能测试       → 不涉及测试

它们不是简单表示“测了/没测”,而是用来判断:当前版本是否具备上线条件。

一、已通过

含义

测试已经完成,实际结果符合预期,没有发现影响上线的问题,可以正常进入发布流程。

通常满足:

  • 核心功能测试正常;
  • 相关功能没有明显异常;
  • 原有功能没有受到影响;
  • 没有未解决的严重缺陷;
  • 测试负责人同意发布。

示例:保险清单报错修复

发布内容:

修复创建保险清单时,填写特殊字符会报错的问题。

测试人员完成以下验证:

1. 正常创建保险清单:成功;
2. 输入特殊字符后创建:成功;
3. 编辑保险清单:成功;
4. 删除保险清单:成功;
5. 查询历史保险清单:正常;
6. 原有清单数据:未受影响。

没有发现其他问题,因此填写:

测试结果:已通过

测试说明:
已完成保险清单创建、编辑、删除及查询测试,
特殊字符报错问题已修复,相关功能运行正常。

能否发布

可以按正常流程继续审批和发布。

二、有条件通过

含义

主要功能已经测试通过,不存在阻止上线的严重问题,但仍有一些已知的小问题、限制条件或待处理事项。

这些问题必须满足:

  • 不影响核心业务;
  • 不会造成数据错误或数据丢失;
  • 不存在明显安全风险;
  • 有临时规避方案;
  • 业务方、产品经理或项目负责人接受;
  • 后续有明确处理计划。

它表示:

可以发布,但不是完全没有问题,必须带着明确条件发布。

示例一:非核心页面显示问题

发布内容:

修复保险清单创建报错。

测试结果:

  • 创建保险清单已经正常;
  • 编辑、提交和查询均正常;
  • 但列表页面中的一个提示文字显示不完整;
  • 不影响用户实际操作;
  • 计划下个版本再调整。

可以填写:

测试结果:有条件通过

测试说明:
保险清单创建、编辑和提交功能测试通过。
目前发现列表页提示文字显示不完整,
不影响业务操作,计划在V1.1.7版本中修复。

示例二:浏览器兼容性存在限制

测试发现:

  • Chrome、Edge浏览器测试通过;
  • 老版本浏览器存在页面错位;
  • 公司目前统一使用新版Chrome和Edge;
  • 老版本浏览器不在支持范围内。

可以填写:

测试结果:有条件通过

测试说明:
Chrome和Edge浏览器测试通过。
旧版本浏览器存在部分页面显示异常,
本次上线条件为用户使用公司规定的浏览器版本。

示例三:有已知问题,但存在规避方法

测试发现:

  • 一次导出5000条以内正常;
  • 超过5000条数据时导出速度较慢;
  • 用户可以按日期分批导出;
  • 不影响日常使用。

可以填写:

测试结果:有条件通过

测试说明:
常规数据导出功能正常。
单次超过5000条数据时处理速度较慢,
上线后暂时要求用户分批导出,
性能问题将在后续版本优化。

能否发布

可以发布,但建议增加以下记录:

遗留问题:
影响范围:
临时规避方案:
后续负责人:
计划解决时间:
业务方是否接受:

“有条件通过”不能用于掩盖严重问题。

例如下面这些情况,不能选择有条件通过:

  • 核心业务偶尔保存失败;
  • 可能产生错误金额;
  • 可能造成数据重复或丢失;
  • 存在越权访问;
  • 问题原因尚未查明;
  • 没有可靠的临时解决办法。

这些通常应该选择“未通过”。

三、未通过

含义

测试已经执行,但结果不符合上线要求,存在阻塞性问题,当前版本不能发布。

常见情况包括:

  • 原来的Bug没有修复;
  • 核心功能仍然报错;
  • 修复一个问题后又产生新问题;
  • 存在数据错误或数据丢失风险;
  • 关键业务流程无法完成;
  • 存在严重性能问题;
  • 存在高风险安全问题;
  • 测试结果与需求不一致。

示例一:原Bug仍然存在

发布目标:

修复创建保险清单时报错的问题。

测试时发现:

  • 普通清单可以创建;
  • 选择某一种保险类型时仍然报错;
  • 该保险类型是业务日常使用类型。

应填写:

测试结果:未通过

测试说明:
普通保险清单创建正常,
但选择“海运保险”类型时仍然报错,
原问题未完全修复,当前版本不具备上线条件。

示例二:修复引入新问题

修复保险清单创建错误后,测试发现:

  • 创建功能正常;
  • 但已创建的保险清单无法编辑;
  • 这是新版本引入的回归问题。

应填写:

测试结果:未通过

测试说明:
创建报错问题已修复,
但新版本导致已创建保险清单无法编辑,
属于新增阻塞性问题,建议退回开发处理。

示例三:数据计算错误

发布内容涉及保费计算,测试发现:

  • 页面可以正常提交;
  • 但部分订单保费计算结果错误;
  • 可能直接影响业务结算。

应填写:

测试结果:未通过

测试说明:
提交功能正常,但部分订单保费计算结果不正确,
可能影响业务数据和费用结算,不允许上线。

能否发布

原则上不能发布,应退回开发重新处理。

紧急情况下也不能因为“着急”就把未通过改成有条件通过。确实必须上线时,应由负责人明确批准并记录风险,但这种情况应作为例外管理。

四、不涉及测试

含义

本次操作本身不包含需要测试人员进行功能验证的内容,因此测试结论不适用。

它不是:

没有时间测试
来不及测试
测试人员不在
申请人觉得不用测试

这些情况不能选择“不涉及测试”。

“不涉及测试”只适合确实没有功能测试对象的场景。

示例一:只更新说明文档

变更内容:

更新系统帮助中心的操作手册PDF,程序和配置均未调整。

可以填写:

测试结果:不涉及测试

测试说明:
本次仅更新用户操作手册附件,
不涉及程序、数据库及系统配置变更。

不过发布人员仍然应检查:

  • 文件是否上传成功;
  • 文件是否可以打开;
  • 用户是否可以正常下载。

这种属于简单检查,不一定需要正式测试人员验收。

示例二:仅修改工单通知人

变更内容:

将系统发布通知邮件的抄送人从离职员工改为新的项目负责人。

如果不涉及程序代码,可以填写:

测试结果:不涉及测试

测试说明:
本次仅调整发布通知接收人员,
不涉及系统功能和业务数据变更。

但配置完成后,仍应发送一次测试通知确认。

示例三:账号停用

变更内容:

停用某位离职员工的系统账号。

可以填写:

测试结果:不涉及测试

测试说明:
本次为账号停用操作,不涉及程序发布。
操作完成后由管理员确认账号状态。

这里更合适的验证是“执行结果确认”,而不是功能测试。

示例四:证书资料补录但没有实际变更

工单只是补录历史发布资料、上传审批附件,没有对生产环境执行任何操作,也可以选择“不涉及测试”。

五、“不涉及测试”和“未测试”不能混淆

这是实际使用中最容易出现的问题。

实际情况 应选择
已测试,所有项目正常 已通过
已测试,有轻微可接受问题 有条件通过
已测试,有阻止上线的问题 未通过
本次确实没有测试对象 不涉及测试
因时间紧张没有测试 不能选“不涉及测试”
测试人员尚未开始测试 建议增加“待测试”状态
测试正在进行 建议增加“测试中”状态

如果这个字段既用于申请阶段,也用于测试完成后的审批阶段,建议增加两个状态:

待测试
测试中
已通过
有条件通过
未通过
不涉及测试

如果只有测试人员在测试完成后才填写,那么保留原来的四个值就足够。

六、为什么需要“有条件通过”

假如只有三个选项:

已通过
未通过
不涉及测试

测试人员遇到一个不影响上线的小问题时会很难选择。

例如:

  • 核心功能全部正常;
  • 只有提示文字不准确;
  • 不影响业务使用;
  • 业务方接受下个版本再修改。

选择“已通过”,会让人误以为没有遗留问题;选择“未通过”,又会不必要地阻止上线。

所以需要“有条件通过”记录真实情况:

可以上线,但存在已知问题和附加条件。

这个状态可以避免把问题藏在备注里,也方便以后统计遗留问题。

七、建议给每个值配置填写规则

已通过

测试已完成;
核心功能正常;
不存在阻塞性问题;
允许进入发布流程。

有条件通过

主要功能测试通过;
存在非阻塞性遗留问题;
必须填写问题、影响、规避方案和解决计划;
需要产品或业务负责人确认接受。

未通过

存在阻塞性问题;
当前版本禁止发布;
必须填写未通过原因。

不涉及测试

本次变更确实没有功能测试对象;
必须填写不涉及测试的原因;
不能用来代替“未测试”。

八、结合你们工单系统的最终建议

字段名称建议由“测试是否通过”改成:

测试结论

下拉值保留:

已通过
有条件通过
未通过
不涉及测试

再增加一个“测试说明”字段,并设置填写要求:

测试结论 测试说明要求
已通过 简要填写测试范围和结果
有条件通过 必须填写遗留问题、影响及后续计划
未通过 必须填写失败项和退回原因
不涉及测试 必须填写为什么不需要测试

这样每一个选项都能留下明确依据,不会只看到一个“已通过”却不知道实际测试了什么。