代码健壮、测试的必要性
最近京沪高铁三天四次故障,一次是因为天气不好,刮风下雨;另一次居然是有乘客吸烟,系统报警,还有两次没找到原因。。。
将这种情况套到程序来分析,其实就是代码健壮性不够强。不健壮的程序表面上运行没问题,但是有一点点风吹草动,或者是不按常理出牌的操作,都会导致系统故障,轻者报错,重者崩溃或者其他严重问题。那么健壮的代码需要些什么呢?在我看来,规范操作、流程清晰、丰富的经验、严谨的判断,这些都必不可少,对那些平时不大可能或者想当然的情况,要做异常处理机制,并且要有自动恢复的操作。
除了健壮性之外,测试也很重要,代码不可能没bug,一丝不苟、吹毛求疵,是测试应有的态度,日本人能做出很好的东西来,我看跟这个不无关系,我以前的公司,程序测试通过后还得发到日本再测一遍,居然能打回来很多在我们看来不算bug的bug。测试的全面与否、细腻与否,关系到这个产品的体验感。贴心的体验和但求完成任务的体验,会影响到客户的心态。
回到高铁,铁路部在通车前没有做天气测试吗?没有做吸烟测试吗?那要是台风、暴风雪或者发生火警呢?岂不是灾难?
如果真没做测试,那就该打了。我看应该是有测试的,只是进度需要或者官员的好大喜功,在测试没有完全验证的情况下急急忙忙通车。
我们做产品,还不是一样吗?有点经验的就提上去做主管了,基本或者很少写代码。测试部没有提到应有的权限,在很多不确定的情况下,就要上市收钱,虽然能运行,但是如果想做大,还是很难的。