软件质量保证与测试 第一章 引论ppt课件_第1页
软件质量保证与测试 第一章 引论ppt课件_第2页
软件质量保证与测试 第一章 引论ppt课件_第3页
软件质量保证与测试 第一章 引论ppt课件_第4页
软件质量保证与测试 第一章 引论ppt课件_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件质量保证与测试 讲师 课程目标 本课程是软件工程或计算机专业课程 重在培养我们的实践能力 适应软件企业的工作环境和业界标准 并和国际先进的软件开发理念和测试技术保持同步 通过本课程的学习 了解并掌握软件产品质量保证的基本思想和科学体系 软件测试技术的基本内容 以及软件测试的方法 技术和工具的使用 为全面掌握软件技术和软件项目管理打下坚实的基础 课程目标 续 通过本课程的学习 我们还可以了解并掌握 有效的测试策略 方法和技术测试计划和测试用例的设计测试自动化的引入 应用测试团队的建立和测试项目的管理更清楚 准确地报告测试缺陷软件测试和质量保证的关系和区别 教材与参考书目 教材 软件测试方法和技术 第3版 朱少民 清华大学出版社参考书目 软件测试 秦晓 科学出版社软件测试技术经典教程 赵斌 科学出版社论坛软件测试网 课程安排 课程安排48学时 36学时理论 12学时实验课程考核平时成绩 20 期末成绩 80 第一章引论 主要内容 1 1软件及其分类1 2软件测试的必要性1 3为什么要进行软件测试1 4什么是软件测试1 5测试和开发的关系1 6测试和质量保证的关系 1 1什么是软件 1 软件的定义与硬件相互依存的另一部分 它是包括程序 数据及其相关文档的完整集合 2 软件的分类按照功能分 系统软件和应用软件按照技术架构分 单机版软件 C S结构软件 B S结构软件按照用户分 产品软件和项目软件按照开发的规模分 大 中 小 1 2软件测试的必要性 软件缺陷和软件故障案例案例1 跨世纪 千年虫 案例2 迪斯尼 狮子王童话 游戏软件案例3 Intel奔腾芯片浮点除法软件缺陷案例4 火星探测飞船坠毁案例5 爱国者导弹防御系统炸死自家人其他案例 1 2软件测试的必要性 1 跨世纪 千年虫 时间 20世纪90年代背景 很多计算机系统都面临 千年虫 的危害 问题 2000年纪后的年份出现问题 00 是 1900 还是 2000 原因 20世纪70年代 计算机内存资源和硬盘空间非常宝贵 故在存储日期时 只保留了年份的后两位 如1980被存为 80 结果 世界各地为了更换和升级系统 付出上百亿美元的代价 1 2软件测试的必要性 2 迪斯尼 狮子王童话 游戏软件时间 1994 1995背景 迪士尼公司首次进军儿童游戏市场出现的问题 该游戏在一些PC机上无法玩原因 未对各种PC机型进行完整的系统兼容性测试 结果 承担客户投诉 产品退货 更换光盘 以及新一轮调试 修改 测试的所有费用 1 2软件测试的必要性 3 Intel奔腾CPU芯片浮点除法软件缺陷时间 1994背景 Intel发布的一款新处理器出现的问题 4195835 3145727 3145727 4195835 0原因 浮点除法软件缺陷 结果 最后Intel公司付出很大代价 回收CPU 造成4亿美元损失 1 2软件测试的必要性 4 火星探测飞船坠毁时间 1999年12月3日背景 美国航天局的火星探测器试图在火星表面着陆时失踪 问题 一个数据位被意外置位 原因 两个小组本身的工作都没什么问题 就是没有合在一起测试 其接口没有被测 而问题就在这里 集成测试 结果 飞船坠毁 1 2软件测试的必要性 5 爱国者导弹防御系统炸死自家人背景 海湾战争时导弹防御系统 问题 软件系统缺陷 原因 当爱国者导弹防御系统的时钟累计运行超过14小时后 系统的跟踪系统就不准确 结果 导致拦截伊拉克飞毛腿导弹的几次失败 其中一枚在沙特阿拉伯的多哈爆炸的飞毛腿导弹造成28名美国士兵死亡 1 2软件测试的必要性 6 其他案例 2007年10月30日 北京奥运会第二阶段门票销售刚启动就因为购票者太多而被迫暂停 低估了群众购票的热情 导致售票系统出现了瓶颈问题 08奥运票务中心 12306的道歉 2006年4月21日晚10时 许霆来到广州天河区黄埔大道某银行的ATM取款机取款 结果取出1000元后 银行卡账户里只被扣1元 许霆先后取款171笔 合计17 5万元 许霆潜逃一年后被抓获 以盗窃罪被判无期徒刑 后改判为5年有期徒刑 是软件的错误将许霆送进了监狱 动车事故 1 3为什么要进行软件测试 软件总存在缺陷 只有通过测试 才可以发现软件缺陷 也只有发现了缺陷 才可以将软件缺陷从软件产品或软件系统中清理出去 软件中存在的缺陷给我们带来的损失是巨大的 这也说明了软件测试的必要性和重要性 测试是所有工程学科的基本组成单元 自然也是软件开发的重要组成部分 测试人员水平越高 找到软件问题的时间就越早 软件就越容易更正 产品发布之后越稳定 公司赚的钱也越多 例 微软 1957 1978年 以功能验证为导向 测试是证明软件是正确的 正向思维 1978 1983年 以破坏性检测为导向 测试是为了找到软件中的错误 逆向思维 1983 1987年 以质量评估为导向 测试是提供产品的评估和质量度量 1988年起 以缺陷预防为导向 测试是为了展示软件符合设计要求 发现缺陷 预防缺陷 1 4什么是软件测试 1 软件测试学科的发展 1 4什么是软件测试 2 软件测试的定义BillHetzel博士 正向思维的代表 软件测试就是为程序能够按预期设想那样运行而建立足够的信心 软件测试是一系列活动以评价一个程序或系统的特性或能力并确定是否达到预期的结果 测试是为了验证软件是否符合用户需求 即验证软件产品是否能正常工作 1 4什么是软件测试 2 软件测试的定义GlenfordJ Myers 反向思维的代表 测试是为了证明程序有错 而不是证明程序无错误一个好的测试用例是在于它能发现至今未发现的错误一个成功的测试是发现了至今未发现的错误的测试 寻找容易犯错误的地方和系统的薄弱环节 试图破坏系统 直至找不出问题 1 4什么是软件测试 2 软件测试的定义 IEEE的定义 在特定的条件下运行系统或构件 观察或记录结果 对系统的某个方面做出评价分析某个软件项以发现现存的和要求的条件之差别 即错误 并评价此软件项的特性 1 4什么是软件测试 2 软件测试的定义 更完整的定义 验证 是检验软件是否已正确地实现了产品规格书所定义的系统功能和特性 有效性确认 是确认所开发的软件是否满足用户真正需求的活动 软件测试是由 验证 Verification 和 有效性确认 Validation 活动构成的整体 1 4什么是软件测试 2 软件测试的定义 软件测试的其它观点 软件测试被认为是对软件系统中潜在的各种质量风险进行评估的活动 不能穷举测试 测试是抽样的活动 samplingactivity 风险总是存在的 基于风险的测试强调对软件开发全过程进行检测 随时发现问题 报告问题 减少对客户不利影响的风险测试的经济观点就是以最小的代价获得最高的软件产品质量 经济观点也要求软件测试尽早开展工作 发现缺陷越早 返工的工作量就越小 所造成的损失就越小 测试的成本 缺陷造成的损失 测试才有意义 1 4什么是软件测试 2 软件测试的定义 1 4什么是软件测试 3 软件测试的目的 1 测试是程序执行的过程 目的在于发现错误 2 检查系统是否满足需求也是测试的期望目标 3 一个好的测试用例在于能发现至今未发现的错误 一个成功的测试是发现了至今未发现的错误的测试 注意 测试无法说明错误不存在 只能说明软件错误已经出现 1 4什么是软件测试 3 软件测试的目的 续 测试目的延伸 软件工程 1 测试的目的是想以最少的人力 物力和时间找出软件中潜在的各种错误和缺陷 通过修正各种错误和缺陷提高软件质量 回避软件发布后由于潜在的软件缺陷和错误造成的隐患带来的商业风险 2 通过分析错误产生的原因还可以帮助发现当前开发工作所采用的软件过程的缺陷 以便进行软件过程改进 同时通过对测试结果的分析整理 还可以修正软件开发规则 并为软件可靠性分析提供依据 3 测试是以评价一个程序或者系统属性为目标的一种活动 测试是对软件质量的度量与评估 以验证软件的质量满足用户的需求 为用户选择与接受软件提供有力的依据 1 4什么是软件测试 4 软件测试的对象软件测试不等于程序测试 软件测试贯串于软件定义和开发的整个过程 软件开发过程中所产生的需求规格说明 概要设计规格说明 详细设计规格说明以及源程序都是软件测试的对象 1 4什么是软件测试 5 软件测试的原则所有的软件测试都应追溯到用户需求 尽早地和及时地测试 测试用例应当由测试数据和与之对应的预期结果这两部分组成 在程序提交测试后 应当由专门的测试人员进行测试 测试用例应包括合理的输入条件和不合理的输入条件 完全测试是不可能的 测试需要终止 1 4什么是软件测试 5 软件测试的原则 续 严格执行测试计划 排除测试的随意性 充分注意测试当中的群体现象 集中 应对每一个测试结果做全面的检查 保存测试计划 测试用例 出错统计和最终分析报告 为维护工作提供充分的资料 1 5测试和开发的关系 让人误解的瀑布模型 1 5测试和开发的关系 32 W模型 33 W模型的关键点 1 测试过程和开发过程同步 2 测试过程和开发过程相互依赖 3 测试过程和开发过程在工作重点 资源管理 风险管理方面存在差异 1 6测试和质量保证的关系 软件质量保证 SoftwareQualityAssurance SQA 活动是通过对软件产品有计划的进行评审和审计来验证软件是否合乎标准的系统工程 通过协调 审查和跟踪以获取有用信息 形成分析结果以指导软件过程 对软件工程各个阶段的进展 完成质量及出现的问题进行评审 跟踪 审查和验证软件产品是否遵守适用的标准 规程和要求 并最终确保符合标准 满足要求 建立软件质量要素的度量机制 了解各种指标的量化信息 向管理者提供可视信息 SQA活动 技术方法的应用正式技术评审的实施软件测试标准的执行修改的控制度量质量记录和记录保存 SQA指导 监督软件测试的计划和执行 督促测试工作的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论