软件测试理论第一讲 1?软件测试的必要性?为什么要进行软件测试?什么是软件测试?软件测试和软件开发的关系?测试驱动开发的思想本章内容 2?软件缺陷带来的悲剧?千年虫(Y2K) 问题?奔腾芯片缺陷?火星登陆事故?爱国者导弹防御系统软件测试的必要性 3?在上个世纪 70年代,程序员为了节约非常宝贵的内存资源和硬盘空间,在存储日期时,只保留年份的后两位,如“ 1980 ”被存为“80 ”。当 2000 年到来的时候,问题就会出现, 比如银行存款程序在计算利息时,应该用现在的日期“ 2000 年1月1日”减去当时存款的日期,比如“ 1989 年1月1日”,结果应该是 21年,如果利息是 3%,银行要付给顾客每 100 元,大约 86 元利息。如果程序没有纠正年份只存储两位的问题, 其存款年数就变为-89 年,变成顾客反要付银行 1288 元的巨额利息。?就是为了这样一个简单的设计缺陷,全世界付出几十亿美元。千年虫(Y2K) 问题 4 (4195835 / 3145727) * 3145727 – 4195835 ? 0 $450 million – 亿美元损失. 奔腾芯片缺陷 5?火星登陆事故?爱国者导弹拦截系统事故?迪士尼的圣诞节礼物其他一些事故 6?没有足够测试?缺乏测试平台?不正确的测试环境?缺少集成测试?缺少性能测试?缺少强度测试?缺少可靠性测试问题在哪里 7?软件测试不仅成为软件开发的一个有机组成部分,而且在软件开发的系统工程中占据着相当大的比重。以美均资金投入为例,通常是: “需求分析”和“规划确定”各占百分之三, “设计”占百分之五,编程占百分之七,测试占百分之十五, 投产和维护占百分之六七十。测试在。软件开发中的地位不言而喻。软件测试的重要性 8?“程序测试是为了发现错误而执行程序的过程”。测试的目的是发现程序中的错误,是为了证明程序有错,而不是证明程序无错。在软件开发过程中,分析、设计与编码等工作都是建设性的,惟独测试是带有“破坏性”, 测试可视为分析、设计和编码 3个阶段的“最终复审”,在软件质量保证中具有重要地位。什么是软件测试 9?软件产品的组成?软件项目组结构?软件开发模型?软件开发模型与软件测试关系软件测试和软件开发的关系 10
软件测试的原理与方法 来自淘豆网m.daumloan.com转载请标明出处.