Files

3.6 KiB

历史典型缺陷复盘

这些是过去项目中发生过的真实 Bug,生成新用例时,请针对这些逻辑设计防御性测试用例。

关联知识:以下缺陷的防御场景已同步到 common_missed_scenes.md §6(数据上报与外部系统对接),生成测试点时会自动交叉引用。

缺陷 ID: BUG-202607-01--上报阶段依赖链断裂

  • 模块: 数据上报(安徽运八)
  • 描述: 运单第一次上报失败(3次重试全部失败),系统未阻断第二次上报触发,导致第二次上报在第一次上报数据缺失的情况下仍然发出,监管平台返回"上报数据不完整"但系统未正确处理该错误。
  • 根因: 上报阶段间的依赖校验仅在前端做了按钮控制,后端接口缺少前置上报完成状态校验。
  • 防御用例: 验证第一次上报失败后,后端接口层面拒绝第二次/第三次上报请求,返回明确错误码"前置上报未完成"验证三个上报阶段依赖链的每个节点,后端均做了前置状态校验(前端+后端双重拦截)
  • 关联易漏场景: common_missed_scenes.md → 6.多阶段依赖链

缺陷 ID: BUG-202607-02--重试幂等缺陷导致重复上报

  • 模块: 数据上报(安徽运八)
  • 描述: 第一次上报超时后进入自动重试,运营人员在重试期间点击"手动上传",系统同时发出了两次上报请求,导致监管平台侧出现两条重复运单记录,触发"运单重复"核验异常。
  • 根因: 手动上传和自动重试共用同一上报接口,但缺少分布式锁或幂等键校验。
  • 防御用例: 验证上报重试期间手动触发上传时,系统提示"上报处理中"并拒绝重复提交验证同一运单同一上报阶段在1分钟内只能有一条成功上报记录
  • 关联易漏场景: common_missed_scenes.md → 6.重试+手动触发并发

缺陷 ID: BUG-202607-03--跨模块数据不一致

  • 模块: 数据上报(安徽运八)/ 账户管理
  • 描述: 财务在账户管理模块修改了打款金额(从10000元调整为9500元),但第二次上报仍然发送了旧的10000元金额,导致资金流水核验"金额不匹配"异常。运单管理、支付流水、上报三个模块的数据不同步。
  • 根因: 上报模块在运单装货完成时缓存了合同金额,打款完成后未从支付流水表重新获取实际打款金额,而是使用了缓存的合同金额。
  • 防御用例: 验证第二次上报的资金流水数据来源于支付流水表(非运单表/缓存),上报金额与财务实际打款金额一致验证财务修改打款金额后,上报模块能感知数据变更并使用最新值
  • 关联易漏场景: common_missed_scenes.md → 6.跨模块数据一致性 / 6.上报数据字段溯源

缺陷 ID: BUG-202607-04--省份代码硬编码

  • 模块: 数据上报(安徽运八)
  • 描述: 系统上线安徽运八时,司机信息中的省份代码仍使用云南省代码"28",而非安徽省代码"34",导致第一批运单的司机资质核验全部异常。
  • 根因: 省份代码在代码中硬编码为项目默认值(云南省=28),未根据上报目标省份动态切换。
  • 防御用例: 验证安徽运八上报的省份代码为安徽省代码,与项目默认云南代码隔离验证多省份部署场景下,上报数据中省份相关字段(省份代码/行政区划代码)与目标省份一致
  • 关联易漏场景: common_missed_scenes.md → 6.省份/区域配置隔离