版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件测试技术软件测试技术东北大学软件学院吴辰铌课程内容介绍课程内容介绍 第一章 软软件测试概测试概述 第二章 黑盒测试测试 第三章 白盒测试测试 第四章 单单元测试测试 第五章 集成测试测试 第六章 系统测试统测试 第七章 软软件自动动化测试测试 第八章 特定环环境及应应用测试测试 第九章 软软件测试测试管理教教 材材 软件测试(原书第软件测试(原书第2版)版) Software Testing A Craftsmans Approach(Second Edition) 美美Paul CJorgensen著著 韩柯等译韩柯等译 机械工业出版社机械工业出版社 2003-7参考书参考书 1.贺平著
2、,贺平著,软件测试教程软件测试教程,电子工业出版社,电子工业出版社,2005-6。 2.张克东张克东 庄燕滨编著,庄燕滨编著,软件工程与软件测试自动化教软件工程与软件测试自动化教程程,电子工业出版社,电子工业出版社,2002-2。 3.美美Elfriede Dustin Jeff Rashka John Paul著,于秀山、胡著,于秀山、胡兢玉等译,兢玉等译,软件自动化测试:引入、管理与实施软件自动化测试:引入、管理与实施,电,电子工业出版社,子工业出版社,2003-7。 4.(美)(美)Ron Patton ,Software Testing,机械工业出,机械工业出版社,版社,2002-3
3、5.John D.McGregor David A.Syles著,杨文宏著,杨文宏 李新辉李新辉 杨洁杨洁等译,等译,面向对象的软件测试面向对象的软件测试 A Practical Guide to Testing Object-Oriented Software,机械工业出版社,机械工业出版社,2002-8。课程性质课程性质 专业课专业课 必修课必修课成绩考核成绩考核 平时平时 10%10% 实验实验 10%10% 期末考试期末考试 80%80%第一章第一章 软件测试概述软件测试概述 主要内容主要内容 1.1 引言引言 1.2 软件测试发展历程软件测试发展历程 1.3 测试相关基本概念测试相关
4、基本概念 1.4 软件缺陷产生的原因软件缺陷产生的原因 1.5 软件测试与开发的关系软件测试与开发的关系 1.6 软件测试基本技术软件测试基本技术 1.7 软件测试的层次软件测试的层次 1.8 软件测试通过准则软件测试通过准则 1.9 软件测试人员应具备的素质软件测试人员应具备的素质1.1 1.1 引言:为什么要测试引言:为什么要测试1.1 1.1 引言:为什么要测试引言:为什么要测试1.1 1.1 引言:为什么要测试引言:为什么要测试 软件测试的背景软件测试的背景 软件错误案例一软件错误案例一 19941994年迪斯尼公司发布的第一个面向儿童的多媒体光盘游戏,年迪斯尼公司发布的第一个面向儿童
5、的多媒体光盘游戏,未测试,只在开发环境可以正常运行未测试,只在开发环境可以正常运行 软件错误案例二软件错误案例二 爱国者导弹防御系统,存在软件缺陷,时钟错误积累起来拖爱国者导弹防御系统,存在软件缺陷,时钟错误积累起来拖延延100100多个小时,导致一枚导弹在多哈击毙多个小时,导致一枚导弹在多哈击毙2828名美国士兵名美国士兵 软件错误案例三软件错误案例三 在美国的一次飞往火星的火箭发射中,因控制程序中的一个在美国的一次飞往火星的火箭发射中,因控制程序中的一个循环语句循环语句“DO5I=1,3”DO5I=1,3”被误认为是赋值语句被误认为是赋值语句“DO5I=1.3”,DO5I=1.3”,一点之
6、差一点之差, ,使火箭发生爆炸使火箭发生爆炸, ,损失一千万美元损失一千万美元1.1 1.1 引言:为什么要测试引言:为什么要测试 各种产品合格率各种产品合格率 飞机制造业合格率飞机制造业合格率 世界著名的宇航工业公司生产的世界著名的宇航工业公司生产的“飞吧飞吧747-400”大型宽体客机由大型宽体客机由100万万个零部件组装而成,其中个零部件组装而成,其中每个零部件的合格率都能达到每个零部件的合格率都能达到99.9999%,请问,请问这种客机的合格率是多少?这种客机的合格率是多少? (99.9999%)1000000 = 36.79%1.1 1.1 引言:为什么要测试引言:为什么要测试 各种
7、产品合格率各种产品合格率 软件合格率软件合格率 假设一个优秀的程序员写出的假设一个优秀的程序员写出的“代码行代码行”合格率合格率可以达到可以达到99%,如果这个程序员开发的软件有,如果这个程序员开发的软件有1万万行代码,那此软件的合格率是多少?行代码,那此软件的合格率是多少? (99%)10000 = 2.25 10 -441.1 1.1 引言:为什么要测试引言:为什么要测试 测试市场方兴未艾测试市场方兴未艾1.2 1.2 软件测试发展历程软件测试发展历程 60年代(软件工程建立前),为了表明程序正确而进行测年代(软件工程建立前),为了表明程序正确而进行测试。试。 1972年年6月,月,Bil
8、l Hetzel(代表论著(代表论著The Complete Guide to Software Testing)在美国的北卡罗来纳()在美国的北卡罗来纳(North Carolina)大学组织了首次以软件测试为主题的会议。大学组织了首次以软件测试为主题的会议。 1973年,年,Bill Hetzel给软件测试一个这样的定义:给软件测试一个这样的定义:“就是建就是建立一种信心,认为程序能够按预期的设想运行(立一种信心,认为程序能够按预期的设想运行(Establish confidence that a program does what it is supposed to do)”。1.2 1
9、.2 软件测试发展历程软件测试发展历程1979年,Glenford MyersThe Art of Software Testing是软软件测试测试方面的圣经圣经。Myers定义义及诠释诠释的测试测试方法论论已成为软为软件测试测试的基本模块块。提出测试测试的目的是证伪证伪。70年代后期至80年代中期QA部门门。1996年提出的测试测试能力成熟度TCMM(Testing Capability Maturity Model将测试将测试分为为五级级:初始级级、阶阶段定义级义级、集成级级、管理和度量级级、优优化级级)。1.3 1.3 软件测试基本概念软件测试基本概念 与测试相关的几个概念与测试相关的几
10、个概念 错误(错误(error)- 同义词是过错(同义词是过错(mistake),人),人们在编写代码时会出现过错,这种过错叫做们在编写代码时会出现过错,这种过错叫做bug。 缺陷(缺陷(fault)- 缺陷是错误的结果。分为过错缺缺陷是错误的结果。分为过错缺陷和遗漏缺陷。陷和遗漏缺陷。 失效(失效(failure)- 当缺陷执行时会发生失效。当缺陷执行时会发生失效。 事故(事故(incident)- 当出现失效时,可能会也可能当出现失效时,可能会也可能不会呈现给用户(或客户或测试人员)。不会呈现给用户(或客户或测试人员)。1.3 1.3 软件测试基本概念软件测试基本概念 软件缺陷的定义软件缺
11、陷的定义 很广的概念,不符合用户期望值或期望行为的表现。很广的概念,不符合用户期望值或期望行为的表现。 在软件中存在,影响软件功能正确实现的问题。在软件中存在,影响软件功能正确实现的问题。 Defact of Software=Bug。 指软件中各种问题的总称。指软件中各种问题的总称。 缺点、毛病、故障、误差或错误、功能失效缺点、毛病、故障、误差或错误、功能失效程序崩溃或挂起、不一致性、界面设计缺陷等。程序崩溃或挂起、不一致性、界面设计缺陷等。1.3 1.3 软件测试基本概念软件测试基本概念 缺陷举例:缺陷举例: 缺点:运行速度慢。缺点:运行速度慢。 毛病:意外退出。毛病:意外退出。 故障:将
12、中文显示成方块。故障:将中文显示成方块。 误差或错误:返回意外的编译错误。误差或错误:返回意外的编译错误。 功能失效:复制图形失败。功能失效:复制图形失败。 程序崩溃或挂起:死机。程序崩溃或挂起:死机。 不一致性:不一致性:Ctrl+S不能保存所有程序。不能保存所有程序。 用户界面设计的缺陷用户界面设计的缺陷:按钮上应按钮上应5个字,却只显示个字,却只显示3个字,个字,排列不整齐。排列不整齐。1.3 1.3 软件测试基本概念软件测试基本概念 与测试相关的几个概念与测试相关的几个概念 程序正确程序正确无语法错误无语法错误运行过程中未发现明显错误运行过程中未发现明显错误程序中无不适当语句程序中无不
13、适当语句有效输入有效输入- -正确输出正确输出无效输入无效输入- -正确处理正确处理任何可能输入任何可能输入- -正确输出正确输出1.3 1.3 软件测试基本概念软件测试基本概念 与测试相关的几个概念与测试相关的几个概念 测试与调试测试与调试 测试条件已知,规程可定义,结果可预知测试条件已知,规程可定义,结果可预知 测试可以计划,过程可控;调试不可控测试可以计划,过程可控;调试不可控 测试是检验,调试是推理过程测试是检验,调试是推理过程 测试除了表明程序正确还要验证程序如何处理失测试除了表明程序正确还要验证程序如何处理失败,调试表明正确败,调试表明正确 测试可不了解设计细节测试可不了解设计细节
14、, ,调试必须了解设计细节调试必须了解设计细节 测试可自动化测试可自动化, ,调试无法自动化调试无法自动化1.3 1.3 软件测试基本概念软件测试基本概念 软件测试的定义软件测试的定义 软件测试软件测试(testing)是一种有计划的和系统性是一种有计划的和系统性的必要采取的措施,就是在软件投入运行的必要采取的措施,就是在软件投入运行前对软件需求分析、设计规格说明和编码前对软件需求分析、设计规格说明和编码的最终复审理。的最终复审理。 在此过程中能对该产品是否实现了用户所在此过程中能对该产品是否实现了用户所期望的要求进行足够了解并建立信任。期望的要求进行足够了解并建立信任。 软件测试是软件质量保
15、证的关键步骤。软件测试是软件质量保证的关键步骤。1.3 1.3 软件测试基本概念软件测试基本概念 软件测试的目的软件测试的目的 软件测试的目的是发现软件存在的错误、软件测试的目的是发现软件存在的错误、减小软件不工作的风险。减小软件不工作的风险。1.4 1.4 软件缺陷产生的原因软件缺陷产生的原因1.4 1.4 软件缺陷产生的原因软件缺陷产生的原因 缺陷产产生原因总结总结如下: 偏离用户户的需求 需求报报告多变变 功能额额外实现实现 功能遗遗漏1.5 1.5 软件开发与测试的关系软件开发与测试的关系用户要求用户要求用户:我要什么用户:我要什么 运行结果运行结果计算机:程序运行计算机:程序运行得到
16、的结果得到的结果源程序源程序程序员:我要让程序员:我要让计算机怎么做计算机怎么做 设计说设计说明明书书设计员设计员:我要:我要让软让软件件怎么怎么做做 需求说明书需求说明书分析员:我可分析员:我可以提供什么以提供什么13425理解正确性理解正确性表达正确性表达正确性理解正确性理解正确性设计正确性设计正确性表达正确性表达正确性理解正确性理解正确性编码正确性编码正确性运行正确性运行正确性输入正确性输入正确性相符吗相符吗? ?1.5 1.5 软件开发与测试的关系软件开发与测试的关系 缺陷在软件开发周期中的任何一个环节都可能缺陷在软件开发周期中的任何一个环节都可能被引入,而且存在放大趋势:被引入,而且
17、存在放大趋势:1.5 1.5 软件开发与测试的关系软件开发与测试的关系 缺陷发现不同时期的成本缺陷发现不同时期的成本1.5 1.5 软件开发与测试的关系软件开发与测试的关系 如何消除软件缺陷如何消除软件缺陷 评审、测试评审、测试 美标准局美标准局VV&T(Verification Validation VV&T(Verification Validation & Test)& Test)1.5 1.5 软件开发与测试的关系软件开发与测试的关系评审评审用户用户需求获取需求获取需求定义需求定义软件产品软件产品可交付软件可交付软件已确认软件已确认软件需求分析书需求分析
18、书已集成软件已集成软件概要设计书概要设计书已测试模块已测试模块详细设计书详细设计书程序程序需求分析需求分析系统测试系统测试确认测试确认测试概要设计概要设计集成测试集成测试详细设计详细设计单元测试单元测试编码编码评审评审评审评审评审评审评审评审评审评审评审评审评审评审需求分析需求分析软件开发与测试软件开发与测试V V模型模型1.5 1.5 软件开发与测试的关系软件开发与测试的关系需求分析需求分析概要设计概要设计确认确认交付交付集成集成详细设计详细设计编码编码单元测试单元测试集成测试集成测试设计测试设计测试功能测试功能测试确认测试确认测试需求测试需求测试系统测试系统测试软软件件开发与测试开发与测试
19、W模型模型1.5 1.5 软件开发与测试的关系软件开发与测试的关系项目阶段任务的里程碑项目阶段任务的里程碑需求分析需求分析需求评审需求评审概要设计概要设计概要设计评审概要设计评审详细设计详细设计设计走查设计走查编码编码单元测试单元测试 各子模块各子模块测试计划测试计划测试过程测试过程测试评审测试评审集成测试集成测试系统测试系统测试确认测试确认测试软软件件开发与测试并开发与测试并行性行性1.5 1.5 软件开发与测试的关系软件开发与测试的关系 开发开发各阶阶段测试测试工作 阶段阶段测试测试需求需求分析分析概要概要设计设计详细详细 设计设计实现实现/ /单元单元 测试测试集成集成 测试测试确认确认
20、 测试测试系统系统 测试测试系统系统 测试测试确认确认 测试测试集成集成 测试测试单元单元 测试测试计划计划计划计划计划计划执行执行执行执行执行执行执行执行执行执行设计设计设计设计设计设计计划计划/ /设计设计1.6 1.6 软件测试技术软件测试技术软件测试分类软件测试分类按按实实施施步步骤骤按按测测试试对对象象按按测测试试技技术术按按测测试试内内容容单元、单元、集成、集成、系统、系统、验收验收软件单元、部软件单元、部件、配置项件、配置项动态、动态、静态静态功能、功能、性能、性能、稳定性、稳定性、可用性、可用性、安全性、安全性、安装、安装、配置、配置、兼容性、兼容性、可维护可维护性、用性、用户手册户手册1.6 1.6 软件测试技术软件测试技术 静态测试技术静态测试技术 特点特点 不必运行程序不必运行程序 发挥人的逻辑思维优势发挥人的逻辑思维优势 无需条件,易展开无需条件,易展开 方法方法 代码审查(与设计的一致性、标准、可读性,表达式逻辑、代码审查(与设计的一致性、标准、可读性,表达式逻辑、结构合理性)结构合理性) 代码检查(与审查类似,但不如审查检查范围广)代码检查(与审查类似,但不如审查检查范围广) 桌面检查(阅读自己程序,效率低)桌面检查(阅读自己程序,效率低) 静态分析(借助于测试工具)静态分析(借助于测试工具) 数据流、控制流、接口分析、表达
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 深圳2020-2024年中考英语真题专题06 阅读匹配(解析版)
- 电冰箱、空调器安装与维护电子教案 1.5 空调器制冷系统故障检修
- DB11T 1192-2015 工作场所防暑降温技术规范
- 2024年医疗美容机构国家随机监督抽查表
- 文化产业示范园区复核书
- 河南省鹤壁市2024-2025学年九年级上学期期中教学质量调研测试化学试题含答案
- 2024-2025学年江苏省南京市高二(上)期中调研测试物理试卷(含答案)
- 噪声监测技术培训课件
- 自我保护课件教学课件
- 医用红外测温仪产业链招商引资的调研报告
- 新人教版小学美术三年级上册教学设计(全册)
- 变配电系统安全风险辨识清单
- 陕西房屋建筑和政基础设施工程施工招标资格预审文件示范文本
- 防呆法防错法PokaYoke
- 理性的具象-对DanKiley的他者解读
- 屋顶分布式光伏电站设计及施工组织方案
- 教学课件:《C++程序设计教程》章韵
- 2014国际航运函电英语课件国航第七课时
- 机动车检验机构标准查新记录(2022年6月)
- 数据恢复业务合同
- 智能化工程监理实施细则
评论
0/150
提交评论