测试代码引入产线的反思
今天遇到用户反馈,在产线上某个指标值一直保持不变,经过开发人员定位分析,原来是在代码中将业务指标值固定写死了,从注释可知,这是一个本地测试代码。为何会出现这样的低级错误呢?现从三个方面来反思一下:
(1)从开发角度:在本地调试的时候没有区分好环境,也就是测试环境和产线环境是共用一段代码的,这样导致在提交代码时因为疏忽大意没有及时删除本地调试的代码,从而引入到了产线环境;作为开发人员,可以从四方面来避免此等错误的再次发生:
- 采用环境的判断条件来添加本地调试代码,这样即使提交了代码,也不会引入到产线环境。
- 采用一个外挂的脚步,在每次提及代码时先检查一下修改的地方,根据一定的规则,若判断了存在一些调试代码的隐患,那么就可以及时终止提交代码。
- 每次提交的代码量不要太多,这样自查时不会因为缭乱而疏忽对调试代码的删除。
- 自测充分,至少达到能提供可测试的功能模块。
(2)从代码管理角度:作为代码评审人员或者稽核人员,应该要对修改的每一行代码进行查验,至少不能出现语义错误、多余代码、测试代码;
(3)从测试角度:要熟悉产品的使用场景,对修改的地方会带来哪些影响有一些预判,至少要达到可交付的功能模块。
阅读是一种修养,分享是一种美德。