记一次bug调试
上线前对项目进行整体测试,出现了一个接口报错。
当时看日志直接定位到了报错位置,以及报错原因:对bean对象的错误调用方式,导致方法出现空指针异常。修复的时候发现,错误的不仅仅这一处。
直接原因:
(1)forkjoin任务类中,对几个bean对象的调用方式错误,导致空指针。不能使用属性注入的方式调用,而是应该使用上下文的方式去调用。
(2)获取用户单日区间的sql方法错误,导致查不出来结果
修改bean对象的调用方式,解决(1)。修改获取用户单日区间的SQL方法,解决(2)
外部原因:这个接口是本次迭代最早开始的一个任务。修改的比较早,修改完之后没来得及充分调试,就去做了一些其他更紧急的工作。之后也没有想起来这个调试的点,导致直到发版前测试才发现问题。
避免忘记开发中的某些环节的方案:写开发日志。阅读需求,开发,调试,提交测试,每一步都要有记录。充分的调试可以提前发现绝大多数问题,减少测试阶段的工作负担