6第7章-测试.ppt

为什么要对软件进行测试(生命损失的事故) 2005年年初,巴拿马国家癌症研究中心,自2001年3月起,有27个病人接受了超量伽马射线的照射。在之后的40个月里,有21个病人相继去世,而其中有5人的死因与接受了超量伽马射线的照射有直接的关系;另外15人因受到伽马射线的照射而引发了严重的并发症。 2004年,媒体报道过北美银行由于一个新安装的软件的缺陷,使得数以万计的客户受到影响,该缺陷的修复花费了整整两个星期的时间,造成数亿元损失; 2003年10月,美国的一个主要零售企业被政府重罚,原因是其网站软件的缺陷使得客户相互间可以查看他人在该网站的订单; 2003年4月,美国一个专门为学生提供贷款的公司由于软件出错,错误计算80万名学生贷款利率,导致了800万美元的利率损失; E.W.Dijkstra 指出: “程序测试能证明错误的存在,但不能证明错误不存在.” 测试的目的是发现程序中的错误,是为了证明程序有错,而不是证明程序无错. 难以说清的软件缺陷 古谚: “一片树叶飘落在森林中没有人听见, 谁能说它发出了声音?” 1: start input(A,B,x) 2: if(A1) 3: and (B==0) 4: then X=X/A 5: end 6: if(A==2) 7: or(X1)

文档评论(0)

1亿VIP精品文档

相关文档