已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 软件测试方法和技术 Ch 1引论 主讲教师 郭晓燕 2 课程服务于 打算从事软件测试这项工作的人想对软件测试知识增强了解的程序员 软件项目经理及软件开发团队的其他人员希望从别的专业转入软件产业领域的人 3 课程目标 本课程是计算机或软件工程专业课程 重在培养我们的实践能力 适应软件企业的工作环境和业界标准 并和国际先进的软件开发理念和测试技术保持同步 通过本课程的学习 了解并掌握软件产品质量保证的基本思想和科学体系 软件测试技术的基本内容 以及软件测试的方法 技术和工具的使用 为全面掌握软件技术和软件项目管理打下坚实的基础 4 课程目标 通过本课程的学习 我们还可以了解并掌握 有效的测试策略 方法和技术测试计划和测试用例的设计测试自动化的引入 应用测试团队的建立和测试项目的管理更清楚 准确地报告测试缺陷对软件产品质量的正确评估软件测试和质量保证的关系和区别 5 内容概览 全书共三篇 分十七章软件测试的原理 四章 阐述软件测试的重要性 基本概念和方法等软件测试的技术 七章 介绍软件测试在软件开发各个阶段 单元测试 集成测试 系统测试 验收测试和安装测试 的技术和方法 以及典型测试领域的特点和技术软件测试的实践 六章 介绍软件测试的团队和环境的建立 以及如何设计测试用例 报告软件缺陷 写测试报告 测试项目的管理 6 考核方式 平时10 实验20 软件测试实践的作业 期末闭卷考试70 总成绩分组 在第3 4周每个班准备2 3个软件 不同类型的 B S 手机app C S等 多多益善 部署在实验室服务器上或自己笔记本上 课程设计或自己的作品 经老师检查通过 7 机遇和挑战并存 测试工程师 目前国内软件业的弱点正是发展的前沿 8 第一章引论 1 1软件测试的重要性1 2为什么要进行软件测试1 3什么是软件测试1 4软件测试与开发的关系1 5测试驱动开发的思想 9 1 1软件测试的重要性 1 1 1软件所带来的悲剧1 1 2其他一些例子1 1 3测试是软件开发重要环节之一 10 1 1软件测试的重要性 软件无处不在航天 汽车 手机 家用电器 办公 飞机控制软件 霍尼韦尔德飞行控制计算机使用了超过150万条软件代码 是波音787客机最复杂的组件之一 现代飞机用包含电子信号的数字飞行控制系统替代了笨重 相对较慢的机械飞行系统 飞机控制系统能发出电子命令 帮助飞行员操作飞行 11 GraceHopper 12 GraceHopper 13 14 千年虫 Y2K 在上个世纪70年代 程序员为了节约非常宝贵的内存资源和硬盘空间 在存储日期时 只保留年份的后两位 如 1980 被存为 80 当2000年到来的时候 问题就会出现 比如银行存款程序在计算利息时 应该用现在的日期 2000年1月1日 减去当时存款的日期 比如 1989年1月1日 结果应该是21年 如果利息是3 银行要付给顾客每100元 大约86元利息 如果程序没有纠正年份只存储两位的问题 其存款年数就变为 89年 变成顾客反要付银行1288元的巨额利息 就是为了这样一个简单的设计缺陷 全世界付出几十亿美元 15 奔腾芯片缺陷 4195835 3145727 3145727 4195835 1994 450million 4 5亿美元损失 错误原因 对测试出的问题缺乏应有的重视 2000年另外一个缺陷发生在1 13MHzPentiumIII 16 其他一些例子 火星探测飞船坠毁迪斯尼的圣诞节礼物放射性治疗仪致命Windows操作系统漏洞 17 Bug 18 问题在哪里 没有足够测试缺乏测试平台不正确的测试环境缺少集成测试缺少性能测试缺少强度测试缺少可靠性测试 19 1 2为什么要进行软件测试 软件测试是保证软件质量的重要手段 所有的软件都会存在或多或少的问题 错误需要测试来发现 同时还需要测试来评估错误密度 软件测试是软件质量保证的关键步骤 越早发现错误代价越低 微软的经验 Windows95 98 Windows2000系统的稳定性有了明显改善 DEV QA 1 2 20 1 3什么是软件测试 1软件学科的形成2正反的争辩3软件测试的定义4软件测试的其他观点 21 软件学科的形成 早期的软件开发中 软件工程的概念和思想还没有形成 1957年 软件测试才区别与调试 作为独立活动存在 此时 测试是在代码完成之后开始 作为产品检验的手段1972年 软件测试的先驱BillHezel博士 软件测试完全指南 软件测试作为一个学科诞生了 开始频繁出现在软件工程的研究和实践中软件测试就是一系列活动 用来评估一个程序或软件系统的特性或能力 确定是否达到了预期结果 软件测试发展到今天 IEEE有相应的国际标准 也是开发中不可缺少的一部分 22 正反观点 GlenfordJ Myers在其代表论著 软件测试的艺术 谈到 程序测试是为了发现错误而执行程序的过程 测试的目的是发现程序中的错误 是为了证明程序有错 而不是证明程序无错 在软件开发过程中 分析 设计与编码等工作都是建设性的 惟独测试是带有 破坏性 测试可视为分析 设计和编码3个阶段的 最终复审 在软件质量保证中具有重要地位 从心理学来讲 人的活动带有高度的目的性 没有错误就会不自觉朝这个方向走 有错误优惠忽视产品的基本需求或实际需求 活动存在随意性 23 软件测试的定义 1983ofIEEEStandard729 使用人工或自动手段来运行或者测试某个系统的过程 其目的在于检验它是否满足规定的需求或是弄清楚预期结果与实际结果之间的差别 一方面通过测试保证质量 一方面改进测试方法和提高测试方法和测试的效率 软件测试是验证和有效性确认构成的整体 24 1 4软件测试与软件开发的关系 瀑布模型 25 1 4软件测试与软件开发的关系 改进V模型 26 改进V模型的特点 从改进V模型可以看出测试活动与分析测试活动的关系 软件测试与开发至始至终一起工作需求分析和功能设计对应验收测试系统设计时 测试人员可以了解系统是如何实现的 基于什么样的平台 这样可以设计系统的测试方案和测试计划 做详细设计时 测试人员可以参与设计 对设计进行评审 找出设计的缺陷 同时设计功能 新特性等各方面的测试用例 完善测试计划 并基于这些测试用例以开发测试脚本 编程的同时进行单元测试 27 TDD Test DrivenDevelopment测试驱动开发 28 TDD 明确当前要
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 华师大版初中科学8.2气温、湿度和降水
- 工程与施工管理制度
- 公司各级职位权责分工制度
- 2024年百色客运资格证考试答题
- 2024年b2客运从业资格证
- 2024年镇江道路运输客运从业资格证模拟考试
- 2024年潍坊a1客运资格证
- 2024年山西客运从业资格证的考试题目是什么题
- 2024年莆田资格证客运题库
- 2023年北京市初三二模道德与法治试题汇编:走向未来的少年章节综合
- 酒店装饰装修工程验收表
- 新北师大版六年级上册数学全册教案(教学设计)
- 呼吸科(呼吸与危重症医学科)出科理论试题及答案
- 调研报告:关于棚户区改造现状、存在问题及对策建议
- 技工学校教师工作规范
- 2022年医院关于缩短患者平均住院日的管理规定
- 清新个人工作述职报告PPT模板
- GWJ 006-2016 超短波频段监测基础数据存储结构技术规范
- 工程管理之工程项目风险管理(PPT)
- 天空地一体化态势感知云平台建设方案
- 液压技术课程设计拉床的液压动力滑台的液压系统设计
评论
0/150
提交评论