本人属性小白,因课程需要 自学软件测试相关内容,攥写此系列记录要点。如有不足,请多指教。
一、实际案例——会流血会流泪
1994年秋天,迪斯尼公司发布了第一个面向儿童的多媒体光盘游戏Lion King Animated Storybook。这是迪斯尼首次进军这个市场,通过大力宣传,其产品销售额非常可观。孩子们都准备在夏天当一次 “狮子王”。然而在发售后,电话支持部门就淹没在愤怒的家长和哭诉玩不成游戏的孩子门电话狂潮中。后经证实,程序员用于开发游戏的系统在大众中并不常见,游戏无法正常运行。
美国爱国者导弹防御系统首次应用在海湾战争中对抗伊拉克飞毛腿导弹攻击。当时大家对这套系统赞誉有加,但不能否认它也出现了一些导致士兵伤亡的情况。其中一枚在沙特阿拉伯的多哈击毙了28名美国士兵。是的,你没看错,确实是美国士兵。分析专家发现一个软件缺陷导致系统时钟错误并最终导致跟踪系统准确度丢失。
可以看出,软件缺陷总会在意想不到的地方出现。随着应用领域的不同,其造成的影响和后果也会不同。最新的一个例子是在微信的安卓版本中输入“2个数字+15个中文句号”,接收和发送消息的手机都会停止响应。是谁这么无聊,这样的一种文本组合缺陷都能被发现。这也从一个侧面反映出软件测试的变幻莫测。
二、软件缺陷——隐藏的杀手
1.软件缺陷判断
有人会说,只要运行出了问题就是软件缺陷。那么我们该怎么判断呢?可以参考以下五条规则:
①软件未达到产品说明书标明的功能。