你是否有想过,一个bug能造成多么严重的后果?

咱们平时的日常工作中会经常遇到各种bug,可能只是让程序无法运行,又或许是让产品暂时无法上线。但你能想象到,一个bug能让5亿美元原地蒸发;导致6人死亡;Debug不成功世界可能都毁灭了。

码农们的双手充满了魔力,在一阵阵的敲击声中时不时就会创造出“魔力”。

打开网易新闻 查看更多图片

一个bug究竟能有多大?
今天咱就来探究一下。

几个历史数据转储逻辑Bug或发货逻辑Bug,就能让几十万轻松蒸发:

打开网易新闻 查看更多图片

这算什么?马上又有码农表示不服了:

自己曾经参加开发的一款发薪软件,出了个发双倍薪资的bug,险些多发了2000多万!

打开网易新闻 查看更多图片

这玩意儿要是真发出去,这哥们估计这会也没机会坐在这刷知乎了。

互联网人从来都不会轻易认输,莫名的胜负欲就这么起来了。

打开网易新闻 查看更多图片

差点导致国家内战的都有。。

你以为这就是终点了吗?

打开网易新闻 查看更多图片

16年的时候,Excel出过一个让遗传基因学论文纷纷扑街的bug。

由于在遗传学中有着不少长得像日期表达的长基因名的缩写,会导致直接被excel转成日期格式。

打开网易新闻 查看更多图片

再往历史的篇幅前翻翻,

1996年,欧洲运载火箭Ariane 5在发射37秒后当场爆炸。

就那么一眨眼的功夫,70亿美元的开发费用再加5亿美元的设备直接蒸发。

打开网易新闻 查看更多图片

而这,仅仅是由一个整数溢出的bug导致的。

然而,bug还不仅仅会导致经济上的损失,有时还会带来意外死亡。

1985年-1987年,加拿大AECL公司开发的Therac-25放射线疗法仪器出现了bug,仪器的辐射能量直接加大了100倍,结果导致了至少6名患者遭受过量辐射而死亡。

打开网易新闻 查看更多图片

还有差点引发全球核战争爆发的bug:1983年苏联核警误报事件

当时苏联的雷达上突然出现了5枚从美方发射来的导弹,负责的苏联军官权衡再三后,成功判断此导弹攻击警告为误报,并没有按规定向上级汇报并申请反击。

幸好,这位军官作出了正确的判断,避免了地球在1983年直接重启。

打开网易新闻 查看更多图片

怎么样?看完这些惊天地泣鬼神的bug事件,是不是觉得平时遇到的那些app卡顿、死机的bug都不算啥了。

不过从上面的事件也可以看出来bug的危害上限有多高了。如果在一些比较大型,影响比较巨大的项目上出现bug,历史的悲剧只会不断重演。

打开网易新闻 查看更多图片

再推回到我们日常的生活工作中,公司要良性运转,肯定是要尽可能的避免bug出现,软件测试工程师的重要性也就体现出来了,作为产品上线前的质量把控,我们需要尽可能的提前检测出存在的缺陷bug,避免对公司造成影响。