答案很简单:软件应用有多广,软件测试就有多重要。
如今,人们的衣食住行、社会的各行各业都离不开各类软件的正常运作和支持。小到手机里五花八门的APP——扫码骑车的小程序,付款买单的支付宝,大到关乎国计民生的大系统——铁路运输的调控系统,卫星发射的操控系统,这些都在软件的范畴之内。而软件测试工程师,就是软件的“体检员”,更是软件质量的“把关者”,重要性自然不言而喻。
当然,市面上还是不乏有一些误解与偏见:“软件开发比软件测试更重要”、“软件测试几乎没有技术含量”、“有时间多测点,没时间少测点”……诸如此类的错误观念,都直接或间接地导致了部分公司因为不够重视测试,造成大量软件Bug频发,进而引发货币和人员损失,甚至爆发灾难性的后果,付出昂贵的代价。
•2019年1月,拼多多网站出现重大BUG。有网民表示,只要领取面值为100元的优惠券,就可以只花不到五毛钱充值100元话费,而且还可以通过注册新账号的方式无限制领券。消息曝光后,有大批用户开始了连夜“薅羊毛”的节奏,利用无门槛优惠券来充值话费、Q币。拼多多官方宣称,此次直接导致被盗取数千万元平台优惠券。
•2019年1月,爱彼迎APP客户端出现汇率转换Bug,用户使用美元、欧元、英镑等币种搜索房源,结算时换成人民币、越南盾等货币支付,订单金额未根据汇率变化。即100美元(折合人民币685元)/晚的房源在结算时改为人民币结算,只需支付100元人民币,甚至有用户选择11万英镑的房子,在支付时选择越南盾,折合人民币只需35元。
•2018年11月,东方航空官网和App出现系统漏洞,多条国内航线售价地址正常价格的一折以下,多条国内航线的头等舱、商务舱往返机票最低仅需90元。
•2015年,伦敦彭博终端由于软件漏洞宕机,导致金融市场上超过30万交易商受到影响。迫使政府推迟30亿英镑的债务出售。
•F-35战斗机成为软件漏洞的受害者,导致其无法正确检测目标。
•日产尼桑汽车由于安全气囊感应探测器的软件故障,召回超过100万辆汽车。据报道,由于此软件故障导致两起事故。
•星巴克咖啡由于POS系统的软件故障无法处理交易,因此被迫关闭了美国和加拿大约60%的商店。
•由于软件故障,亚马逊上一些第三方零售商的产品价格全部被降至1英磅,由此导致惨重损失。
•1999年4月,一个软件漏洞导致12亿美元的军事卫星发射失败,这是历史上最昂贵的事故。
•1996年5月,一个软件问题导致美国一家大型银行823名客户的银行账户被记入9.2亿美元。
•1994年4月26日,中国航空公司空中客车A300因软件故障而坠毁,造成264人无辜死亡。
•1985年,加拿大的Therac-25放射治疗机由于软件Bug而发生故障,向患者提供了致命的辐射剂量,造成3人死亡,3人严重受伤。
……
这么多触目惊心的事例,相信足以说明软件测试的重要性和必要性。
但是,随着软件竞争的白热化,软件质量已经成为软件的核心竞争力所在,因为从客户的角度看,软件的质量远比功能更重要。打个比方,你买个手机,你是更多的关注它的功能,还是关注它的质量,如果你的新手机,一买回来就不能用,你的心情会是怎样,你还闲心关注它有好多好炫的功能吗?
令人欣慰的是,已经有越来越多的管理者认识到“软件测试的重要性”,对软件测试的重视程度也越来越高。而对于软件测试行业从业者来说,无论是加入公司独立设置的测试部门,还是进入专业的软件测试服务公司,都会成为不错的职业选择。