态度决定一切,保持严谨的工程师思维。

60 阅读2分钟

事件时间线:(2023-10-27)

  1. 9点故障提出
  2. 14点第一版修复完成,第一次提交待验证(未在环境上自测)
  3. 17点QA反馈验证不通过
  4. 20点第二版修复完成,第二次提交待验证(未在环境上自测)
  5. 21点QA反馈验证不通过
  6. 22点第三版修复完成,第三次提交待验证(在环境上创建更新流程自测通过,但是审批流程没测到)
  7. 23点QA反馈验证不通过
  8. 凌晨30分第四版修复完成,没人合代码
  9. 第二天早上9点代码合入,验证通过

问题点分析:

    • 第一次提交时问题分析不到位,没有识别到复制和创建/更新时调用的接口不一样,实际上只在后端处理了复制的接口
    • 第二次提交时,直接在前端传参数时增加标识符,复制和创建/更新在同一个页面,统一处理,本地验证通过。但是提交代码时,前端通过amend多次提交在同一个记录,但是在第一次提交完就CHERRY PICK到TEST分支导致后面的代码没有到TEST分支。
    • 第三次提交时把前端代码同步到最新的后,创建/更新/复制环境上验证没有问题,但是没有识别到更新接口在审批流程中也有调用,并且前端新增的标识参数在后端接受的时候是Boolean包装类型,转换的时候转成了boolean基础类型。Boolean可以为空,而boolean默认值为false。(这个是识别到的,所以在前端页面传参数为TRUE,但是识别不全面,导致漏了审批的页面没传值,空和false代表不同的业务意义。)

反思: 问题分析要全面 交付的东西需要在环境上验证,不要侥幸心理。 对待简单的事情也需要保持严谨的态度,要有足够的容错思考。 态度决定一切,保持严谨的工程师思维。