版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件测试软件测试第一章第一章 软件测软件测试概述试概述教学目的教学目的l理解软件测试的背景,软件缺陷和故障的概念理解软件测试的背景,软件缺陷和故障的概念l理解软件测试的意义理解软件测试的意义l理解软件开发过程与软件测试的关系理解软件开发过程与软件测试的关系l理解软件质量的概念及质量保证体系理解软件质量的概念及质量保证体系l理解测试用例的编写规范和设计原则理解测试用例的编写规范和设计原则教学重点及难点教学重点及难点l重点重点软件测试的原则、软件测试过程模型软件测试的原则、软件测试过程模型l难点难点测试用例的设计和编写测试用例的设计和编写基本内容基本内容l软件测试背景软件测试背景l软件测试基本概念
2、软件测试基本概念l测试用例测试用例软件测试背景软件测试背景软件软件l软件的定义(软件的定义(P2)由专业人员开发并长期维护的产品,其包括了在各种不同容由专业人员开发并长期维护的产品,其包括了在各种不同容量和体系结构计算机上可执行程序,运行过程中产生的结果,量和体系结构计算机上可执行程序,运行过程中产生的结果,以及以硬复制和电子表格等多种方式存在的软件文档。以及以硬复制和电子表格等多种方式存在的软件文档。l软件分类软件分类按照在计算机系统中所处的应用层次的不同,软件可以分为按照在计算机系统中所处的应用层次的不同,软件可以分为系统软件、支撑软件和应用软件三类。系统软件、支撑软件和应用软件三类。按照
3、软件本身规模的不同,软件可以划分为微型、小型、中按照软件本身规模的不同,软件可以划分为微型、小型、中型、大型和超大型软件。型、大型和超大型软件。按照软件运行平台的不同,软件可以分为个人计算机软件、按照软件运行平台的不同,软件可以分为个人计算机软件、嵌入式软件、基于嵌入式软件、基于Web的软件等。的软件等。软件测试背景软件测试背景软件软件l软件中的软件中的Bug非常令人讨厌。但同时有缺陷的软非常令人讨厌。但同时有缺陷的软件还有可能造成重大甚至致命的事故。件还有可能造成重大甚至致命的事故。l著名的软件事故著名的软件事故1962年,水手号火箭的致命年,水手号火箭的致命BUGl一名程序员把一条手写的公
4、式抄写为错误的计算机代码。从一名程序员把一条手写的公式抄写为错误的计算机代码。从而将火箭引导偏离了航向,造成而将火箭引导偏离了航向,造成1850万美元万美元 的经济损失。的经济损失。软件测试背景软件测试背景软件软件1978年年, 哈特福德体育场倒塌事件哈特福德体育场倒塌事件l分析受力的程序错误地假设钢结构屋顶的支撑仅承受纯压力分析受力的程序错误地假设钢结构屋顶的支撑仅承受纯压力. 但当其中一个支撑因大雪塌了后但当其中一个支撑因大雪塌了后,导致连锁反应导致连锁反应, 从而导致整从而导致整个体育场的塌陷,造成个体育场的塌陷,造成7000万美元的经济损失。万美元的经济损失。几乎引发的第三次世界大战几
5、乎引发的第三次世界大战l1983年年, 苏联导弹预警系统错误地报告遭到美国发射的苏联导弹预警系统错误地报告遭到美国发射的5枚导枚导弹攻击。弹攻击。(41958353145727)3145727- 4195835 = ?l若若“计算器计算器”程序得出程序得出“0”,说明该计算机浮点处理没有问,说明该计算机浮点处理没有问题,否则浮点除法存在缺陷。题,否则浮点除法存在缺陷。l1994年,英特尔公司年,英特尔公司CPU芯片出现此缺陷,为回收该芯片出现此缺陷,为回收该CPU付出很大代价,造成付出很大代价,造成4亿美元损失。亿美元损失。软件测试背景软件测试背景软件软件1999年美国宇航局的火星探测飞船在试
6、图登陆火星地年美国宇航局的火星探测飞船在试图登陆火星地面时突然坠毁失踪。面时突然坠毁失踪。l用来关闭反推进器的数据位设置错误,提前关闭了反推进器用来关闭反推进器的数据位设置错误,提前关闭了反推进器的开关。火箭没有反推进器的作用,从的开关。火箭没有反推进器的作用,从1800米的高空直接冲米的高空直接冲向地面,撞成碎片。向地面,撞成碎片。.软件测试背景软件测试背景软件测试重要性软件测试重要性l软件总存在缺陷。只有通过测试,才可以发现软件缺陷。软件总存在缺陷。只有通过测试,才可以发现软件缺陷。也只有发现了缺陷,才可以将软件缺陷从软件产品或软也只有发现了缺陷,才可以将软件缺陷从软件产品或软件系统中清理
7、出去。件系统中清理出去。l软件中存在的缺陷给我们带来的损失是巨大的,这也说软件中存在的缺陷给我们带来的损失是巨大的,这也说明了软件测试的必要性和重要性。明了软件测试的必要性和重要性。产品质量的保证产品质量的保证控制成本的关键控制成本的关键软件可靠性确认软件可靠性确认让企业具备国际竞争的实力让企业具备国际竞争的实力l测试人员水平越高,找到软件问题的时间就越早,软件测试人员水平越高,找到软件问题的时间就越早,软件就越容易更正,产品发布之后越稳定,公司赚的钱也越就越容易更正,产品发布之后越稳定,公司赚的钱也越多。多。软件测试背景软件测试背景软件工程软件工程l概念概念软件工程是以借鉴传统工程的原则、方
8、法,以提高软件工程是以借鉴传统工程的原则、方法,以提高质量、降低成本为目的指导计算机软件开发和维护质量、降低成本为目的指导计算机软件开发和维护的工程学科。的工程学科。l传统软件工程过程传统软件工程过程“瀑布模型瀑布模型”在软件瀑布模型中,测试只有等到程序完成了才可在软件瀑布模型中,测试只有等到程序完成了才可以执行,强调测试仅仅是对程序的检验。以执行,强调测试仅仅是对程序的检验。这种模型与软件开发的迭代思想、敏捷方法存在很这种模型与软件开发的迭代思想、敏捷方法存在很大的冲突,不符合软件工程的最佳实践。大的冲突,不符合软件工程的最佳实践。软件测试背景软件测试背景软件质量软件质量l软件工程的目标是生
9、产出高质量的软件。软件工程的目标是生产出高质量的软件。lRoger S. Pressman对软件质量的定义对软件质量的定义软件要符合显示声明的功能和性能需求,显示文档化软件要符合显示声明的功能和性能需求,显示文档化的开发标准以及专业人员开发的软件所应具有的所有的开发标准以及专业人员开发的软件所应具有的所有隐含特性。隐含特性。软件测试背景软件测试背景软件可靠性和软件错误软件可靠性和软件错误l软件可靠性软件可靠性在特定环境和特定时间内,计算机程序无故障运行的在特定环境和特定时间内,计算机程序无故障运行的概率。概率。l软件错误软件错误是一个统称,其中涉及很多概念。主要包括软件错误、是一个统称,其中涉
10、及很多概念。主要包括软件错误、软件缺陷、软件故障和软件失效。(软件缺陷、软件故障和软件失效。(P5)软件测试基本概念软件测试基本概念l软件测试是为了发现错误而执行程序的过程。软件测试是为了发现错误而执行程序的过程。l软件测试要求以较少的测试用例、时间和人力找软件测试要求以较少的测试用例、时间和人力找出软件中潜在的各种错误和缺陷,以确保软件的出软件中潜在的各种错误和缺陷,以确保软件的质量。质量。lIEEE对软件测试的定义对软件测试的定义使用人工和自动手段来运行或测试某个系统的过程,使用人工和自动手段来运行或测试某个系统的过程,其目的在于检测它是否满足规定的需求或是弄清预期其目的在于检测它是否满足
11、规定的需求或是弄清预期结果与实际结果之间的差别。结果与实际结果之间的差别。软件测试基本概念软件测试基本概念l软件测试绝不仅仅是对程序进行测试,需求规格软件测试绝不仅仅是对程序进行测试,需求规格说明、概要设计、详细设计、程序等都是软件测说明、概要设计、详细设计、程序等都是软件测试的对象。试的对象。软件测试基本概念软件测试基本概念测试目的测试目的l发现软件中存在的缺陷和系统不足,定义系统的发现软件中存在的缺陷和系统不足,定义系统的能力和局限性,提供组件、工作产品和系统的质能力和局限性,提供组件、工作产品和系统的质量信息;量信息;l提供预防或减少可能错误的信息,在过程中尽早提供预防或减少可能错误的信
12、息,在过程中尽早检测错误以防止错误传递到下一阶段,提前确认检测错误以防止错误传递到下一阶段,提前确认问题和识别风险;问题和识别风险;l最终获取系统在可接受风险范围内可用的信息,最终获取系统在可接受风险范围内可用的信息,确认系统在非正常情况下的功能和性能,保证一确认系统在非正常情况下的功能和性能,保证一个工作产品是完整的并且可用或者可被集成。个工作产品是完整的并且可用或者可被集成。软件测试基本概念软件测试基本概念测试原则测试原则l不可能进行完全测试。不可能进行完全测试。l测试中有风险存在。测试中有风险存在。l软件测试只能表明缺陷的存在,而不能证明产品已经没软件测试只能表明缺陷的存在,而不能证明产
13、品已经没有缺陷。有缺陷。l软件产品中所存在的缺陷数与已发现的缺陷数成正比。软件产品中所存在的缺陷数与已发现的缺陷数成正比。l要避免软件测试的杀虫剂现象。要避免软件测试的杀虫剂现象。l及早的和不断的进行软件测试。及早的和不断的进行软件测试。l进行回归测试。进行回归测试。l软件测试应该有计划、有组织的进行。软件测试应该有计划、有组织的进行。软件测试基本概念软件测试基本概念软件测试分类软件测试分类l按照开发阶段划分,软件测试可分为单元测试、集成测按照开发阶段划分,软件测试可分为单元测试、集成测试、确认测试、系统测试和验收测试。(试、确认测试、系统测试和验收测试。(P8)l按照测试实施组织划分,软件测
14、试可分为开发方测试、按照测试实施组织划分,软件测试可分为开发方测试、用户测试和第三方测试。(用户测试和第三方测试。(P9)l按照测试技术划分,软件测试可分为白盒测试、黑盒测按照测试技术划分,软件测试可分为白盒测试、黑盒测试和灰盒测试。(试和灰盒测试。(P9)l按照测试方式划分,软件测试可分为静态测试和动态测按照测试方式划分,软件测试可分为静态测试和动态测试。(试。(P9)l按照测试目的划分,软件测试可分为功能测试、健壮性按照测试目的划分,软件测试可分为功能测试、健壮性测试、性能测试、压力测试、用户界面测试、可靠性测测试、性能测试、压力测试、用户界面测试、可靠性测试、安全性测试、文档测试、恢复测
15、试、兼容性测试等。试、安全性测试、文档测试、恢复测试、兼容性测试等。(P9)软件测试基本概念软件测试基本概念软件测试过程模型软件测试过程模型l软件测试过程模型是对软件测试过程的一种抽象,软件测试过程模型是对软件测试过程的一种抽象,用于定义和描述软件测试的流程和方法。用于定义和描述软件测试的流程和方法。V模型模型l反映了软件测试与需求分析和设计活动的关系,描述了基本反映了软件测试与需求分析和设计活动的关系,描述了基本开发过程和测试行为,以及它们之间的关系。开发过程和测试行为,以及它们之间的关系。l单元测试和集成测试验证程序设计;系统测试验证系统设计;单元测试和集成测试验证程序设计;系统测试验证系
16、统设计;验收测试验证软件需求。验收测试验证软件需求。l缺点:没有明确说明早期的测试,不能体现缺点:没有明确说明早期的测试,不能体现“及早地和不断及早地和不断地进行软件测试原则地进行软件测试原则”。软件测试基本概念软件测试基本概念软件测试过程模型软件测试过程模型W模型模型l开发活动和测试活动分别形成一个开发活动和测试活动分别形成一个V,构成,构成W。l强调测试活动伴随整个软件开发生命周期,测试对象包括需强调测试活动伴随整个软件开发生命周期,测试对象包括需求、设计、程序等活动。求、设计、程序等活动。l测试和开发同步进行,有利于及时发现和解决问题。测试和开发同步进行,有利于及时发现和解决问题。l体现
17、了体现了“及早地和不断地进行软件测试及早地和不断地进行软件测试”原则。原则。l缺点:将软件开发各个阶段割裂开来,一段结束才能进行下缺点:将软件开发各个阶段割裂开来,一段结束才能进行下一段。一段。l实际开发和测试过程中,各个阶段没有严格的次序关系。实际开发和测试过程中,各个阶段没有严格的次序关系。软件测试基本概念软件测试基本概念软件测试过程模型软件测试过程模型H模型模型l不同测试活动可以按照某个次序先后进行,也可以支持反复不同测试活动可以按照某个次序先后进行,也可以支持反复和迭代过程。和迭代过程。lH模型体现了测试活动的独立性,存在于整个软件开发生命模型体现了测试活动的独立性,存在于整个软件开发
18、生命周期并与其它流程并发进行,体现了周期并与其它流程并发进行,体现了“及早地和不断地进及早地和不断地进行软件测试行软件测试”原则。原则。测试用例测试用例l什么是测试用例?什么是测试用例?为达到最佳的测试效果或高效的揭露隐藏的错误,而为达到最佳的测试效果或高效的揭露隐藏的错误,而精心设计并执行的少量测试数据,称之为测试用例。精心设计并执行的少量测试数据,称之为测试用例。l测试用例是测试执行的最小实体,是为特定的目测试用例是测试执行的最小实体,是为特定的目的而设计的一组测试输入、执行条件和预期结果。的而设计的一组测试输入、执行条件和预期结果。l一个好的测试用例在于它能够发现软件中至今未一个好的测试用例在于它能够发现软件中至今未被发现的错误。被发现的错误。l测试用例类型测试用例类型通过测试(首先使用)通过测试(首先使用)失败测试。失败测试。测试用例测试用例编写编写l编写内容编写内容测试用例设计说明测试用例设计说明测试用例说明测试
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年有色金属矿采选业碳排放交易机制研究
- 变压器试验工变更管理竞赛考核试卷含答案
- 人力采伐工技能竞赛测试考核试卷含答案
- 酒体设计师操作知识竞赛考核试卷含答案
- 糕点装饰师绩效目标强化考核试卷含答案
- 中班体育游戏《球儿滚滚》教学设计
- 一级保养考试试题与参考答案
- 配位滴定方式及其应用教学设计中职专业课-分析化学-分析检验技术-生物与化工大类
- 语文人教部编版(五四制)登鹳雀楼教案
- 七年级英语下册 Unit 4 Don't eat in class Section A(1a-2d)教学设计(新版)人教新目标版
- 2026年上海市闵行区中小学教师招聘考试试卷及答案
- 2026 年秋季开学:新时代教师师德师风建设专题培训
- 新版2026西师大版数学六年级上册全册完整版教案教学设计合集
- 2026年山西调度规程考试试题及答案
- 蓝图绘就 十五五(2026-2030)山东省纺织服装产业升级建设方案报告
- 2026年幼儿园新生家长会后勤园长
- 2025年新疆医科大学第一附属医院医护人员招聘考试题库及答案详解
- 工程伦理第2版
- 人民医院病房改造提升项目监理大纲服务方案投标文件(技术标)
- ICU患者镇静镇痛状态评估量表
- 社区胸痛健康教育
评论
0/150
提交评论