版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章 软件测试概述1.1 软件、软件危机和软件工程 1.1.1软件、软件危机和软件工程的基本概念(什么是软件?什么是软件危机?) 软件软件是计算机系统中与硬件相互依存的另一部分,它是包括程序、数据及相关文档的完整集合。 软件危机软件危机是在计算机的开发和维护过程中产生一系列严重的问题,导致软件生产与市场需求出现严重对立的局面。 软件工程软件工程是应用计算机科学、数学及管理科学等原理开发软件的过程。1.2 软件缺陷与软件故障(软件错误、软件缺陷、软件故障几个概念的关系)软件错误是指在软件生存期内的不希望出现或不可接受的人为错误,软件错误导致软件缺陷的产生。(存在于过程中)软件缺陷是存在于软件(
2、文档、数据、程序)之中的不希望出现或不可接受的偏差,软件缺陷导致软件在运行于某一特定条件时出现软件故障,这时软件缺陷被激活。(潜伏于软件产品中)软件故障是指软件在运行过程中产生的不希望出现或不可接受的内部状态,对软件故障若无适当措施(容错)加以处理,就会使软件失效。(执行中表现)软件失效是指软件在运行时产生的不希望出现的或不可接受的外部行为结果。(故障未得到有效处理)1.3 软件测试1.4.1 软件测试的概念(定义及目的) 软件测试简单地说,软件测试就是为了发现错误而执行程序的过程。 ieee定义为:使用人工或自动手段运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清楚预期结果
3、与实际结果之间的差别。软件测试的目的发现缺陷、评估软件质量、帮助改进开发。1.4.3 软件测试过程模型(及其特点)(列举三种软件过程模型,并简单说明其特点)1. v模型:反映测试阶段与开发阶段的对应关系,不能反映测试的完整过程。2. w模型:对v模型的改进。增加了软件开发各个阶段同步进行的验证和确认 活动。 3. h模型:强调测试流程的独立性,测试就绪点体现了与其他流程的关联。1.4.4 软件测试的分类按测试方式分类静态测试、动态测试。按测试方法分类白盒测试、黑盒测试。按测试过程分类单元测试、集成测试、系统测试、验收测试。按测试目的分类功能测试、健壮性测试、性能测试、接口测试、强度测试、压力测
4、试、安全测试、可靠性测试1.4.5 软件测试流程1、制定测试计划 2、设计测试方案 3、测试准备 4、测试执行 5、测试评估 6、测试总结第三章 软件测试基本技术3.1 软件测试技术概述 白盒测试技术已知产品的内部工作过程,通过测试验证每种内部操作是否符合设计规格要求,所有内部成分是否满足用户要求。 黑盒测试技术一只产品的设计规格和用户手册,可以进行测试验证每个功能是否实现、每个实现了的功能是否符合要求,以及产品的性能等是否满足用户的要求。3.2 白盒测试技术 3.2.3 逻辑覆盖 逻辑覆盖的类型 语句覆盖:使程序中每一条可执行语句至少执行一次。 判定覆盖:使程序中每个判断的取真分支和取假分支
5、至少执行一次。 条件覆盖:使程序中每个判断的每个条件的每个可能取值至少执行一次。判定/条件覆盖:使程序中每个判断的每个条件的所有可能取值至少执行一次,并且每个可能的判断结果也至少执行一次。条件组合覆盖(多条件覆盖):使程序中每个判断的所有可能的条件取值组合至少执行一次 3.2.3 基本路径测试 基本路径测试的步骤:(简述根据基本路径覆盖方法设计测试用例的步骤) 画出程序控制流程图 计算环路复杂性 v(g)=e-n+2 v(g)=p+1 确立独立路径集合 准备测试用例(包括路径、输入数据、预期结果)3.2.5 其他白盒测试方法(有域测试、符号测试、z路径测试、程序变异)3.3 黑盒测试技术 3.
6、3.1 功能测试 等价类划分:所谓等价类是指某个输入域的子集。等价类划分包括有效等价类和无效等价类两种情况。 边界值分析:对输入和输出的边界值进行测试的一种黑盒测试方法。 因果图法:(简述采用因果图法设计测试用例的步骤) 基于因果图法生成测试用例的步骤: 分析软件规格说明中的描述哪些是因,哪些是果 分析软件规格说明描述中的语义,画出因果图 在因果图上使用若干标准的符号标明约束条件 把因果图转换成判定表 为判定表中的每一列设计测试用例 判定表驱动:也称判定表,是分析和表达多逻辑条件下执行不同操作的情况的工具。 判定表由条件桩、动作桩、条件项、动作项四部分组成。 生成条件表的规则有规则、化简。 判
7、定表的建立步骤: 确定规则的个数; 列出所有的条件项和动作项;填入条件取值; 填入集体动作,得到初始判定表;简化,合并相似规则(相同动作) 场景法、正交实验法、错误推测、功能图法简述采用场景法设计测试用例的大步骤。 根据说明,描述出程序的基本流及各项备选流; 根据基本流和各项备选流生成不同的场景; 对每一个场景生成相应的测试用例; 对生成的所有测试用例重新复审,去掉多余的测试用例,测试用例确定后,对每一个测试用例确定测试数据值。 3.3.2 非功能测试(列举一些非功能黑盒测试类型) 有强度测试、性能测试、安全测试、兼容性测试、配置测试、安装与卸载测试、故障修复测试等。第四章 软件测试过程4.1
8、 软件测试过程概述 软件测试过程与软件工程开发过程是相对应的。4.2 单元测试4.2.1 单元测试的定义单元测试是对软件设计的最小单元模块进行正确性检验的测试工作,主要测试模块在语法、格式和逻辑上的错误。4.2.3 单元测试的主要任务单元测试的主要任务是解决5个方面的测试问题:1.模块接口测试 2.模块局部数据结构测试 3.模块中所有独立执行路径测试 4.各种错误处理测试 5.模块边界条件测试 4.2.4 单元测试环境的建立 在进行单元测试时,须设置若干辅助测试模块。辅助测试模块有两种:驱动模块(driver),用以模拟被测试模块的上级模块;桩模块(stub),用以模拟被测模块工作过程中所调用
9、的模块。 所测模块和与它相关的驱动模块及桩模块共同构成了一个“测试环境”。4.3 集成测试 4.3.1 集成测试的定义 集成测试(组装测试、联合测试)是单元测试的扩展,把经过测试的单元组合成一个组件进行测试,并测试它们之间的接口。 4.3.2 集成测试的主要任务 集成测试的主要任务是检验软件系统是否符合实际软件结构,发现与接口有关的各种错误。主要解决以下5个方面的测试问题: 1.将各模块连接起来,检查模块相互调用时,数据经过接口是否丢失;2.将各个子功能组合起来,检查能否达到预期要求; 3.一个模块的功能是否会对另一个模块的功能产生不利的影响; 4.全剧数据结构是否有问题,会不会被异常修改;
10、5.单个模块的误差积累起来,是否被放大,从而达到不可接受的程度。 4.3.4 集成测试实施方案 如非增量式集成测试和增量式集成测试、三明治集成测试、核心集成测试、分层集成测试、基于使用的集成测试等。 非增量式集成测试是采用一步到位的方法来进行测试。 增量式集成测试实施方案有两种方法,即自顶向下增量式集成测试和自底向上增量式集成测试。 逐步集成和逐步测试是按结构图自上而下进行的。4.4 系统测试 4.4.1 系统测试的定义 系统测试是指将通过集成测试的软件系统,作为计算机系统的一个重要组成部分,与计算机硬件、外设、某些支撑软件的系统等其他系统元素组合在一起所进行的测试,目的在于通过与需求定义作比
11、较,发现软件与系统定义不符合或矛盾的地方。4.5 验收测试 4.5.1 验收测试的定义 验收测试实在软件开发结束后,用户对软件产品投入实际应用之前,进行的最后一次质量检验活动。 4.5.4 a、b测试 a测试是在软件开发公司内模拟软件系统的运行环境下的一种验收测试,即软件开发公司组织内部人员,模拟各类用户行为对即将面试的软件产品(称为a版本)进行测试。 经过a测试的调整的软件产品称为b版本,b测试是面向公众的。4.6 回归测试4.6.2 回归测试的范围在回归测试范围的选择上,一个最简单的方法是每次回归执行所有在前期测试阶段建立的测试,来确认问题修改的正确性,以及没有造成对其他功能的不利影响。另
12、外一种方法是有选择的执行以前的测试用例。常用的用例选择方法可以分为以下3种:局限在修改范围内的测试,在受影响功能范围内回归,根据一定的覆盖率指标选择回归测试第五章 测试用例设计5.1 测试用例的基本概念 测试用例是测试执行的最小实体,是为特定的目的而设计的一组输入、执行条件和预期的结果。测试用例的作用:有效性、避免测试的盲目性、可维护性、可复用性、可评估性、可管理性5.2 测试用例的设计 5.2.2 测试用例的编写标准 一个优秀的测试用例应该包括以下要素:用例的编号(id)、测试标题、测试项、测试环境要求、特殊要求、测试技术、测试输入说明、操作步骤、预期结果、测试用例之间的关联、其他信息:设计
13、人员、审核人员、设计日期等。5.3 测试用例设计实例5.5 测试用例管理 测试用例的一般流程:编写用例、用例评审、用例修改、用例入库、使用用例、用例升级/维护。 编写用例用例评审修改用例进入版本控制库使用用例&维护&升级 图5.4 测试用例管理示意图 测试用例的组织方式:按照程序功能块组织 按照测试用例的类型组织 按照测试用例的优先级第六章 测试报告与测试评测6.1 软件缺陷与软件缺陷种类 软件缺陷简单地说就是存在于软件(文档、数据、程序)之中的那些不希望或不可接受的偏差,这些偏差导致软件产生质量问题。 软件缺陷的有效描述规则:单一准确、可以再现、完整统一、短小简练、特定条件、
14、补充完善、不做评价。 软件缺陷的属性:缺陷标识、缺陷描述与缺陷注释、缺陷类型、缺陷严重程度(致命、严重、一般、较小)、缺陷产生可能性、缺陷优先级(最高优先级、高优先级、正常排队、低优先级)、缺陷状态、缺陷起源、缺陷来源、缺陷根源。6.2 软件缺陷的生命周期软件缺陷的生命周期指的是一个软件缺陷被发现、报告到这个缺陷被修复、验证直至最后关闭的完整过程。(打开状态(open)、解决状态(fixed)、关闭状态(closed))软件缺陷管理系统的作用:(1)保持高效率的测试过程 (2)提高软件缺陷报告的质量 (3)实施实时管理,安全控制 (4)利用该系统还有利于项目组成员间协同工作6.7 软件测试的评
15、测6.7.2 质量评测对于缺陷分析,常用的主要缺陷参数有: 状态:缺陷的当前状态(打开的、正在修复的或关闭的等)。 优先级:表示修复缺陷的重要程度和应该何时修复。 严重性:表示软件缺陷的恶劣程度。 起源:导致缺陷的原因及其位置。缺陷分析通常用以下形式的度量提供缺陷评测:缺陷发现率、缺陷潜伏期、缺陷密度、整体软件缺陷清除率。第七章 软件测试项目管理7.5 软件测试的配置管理 软件测试的配置管理是在团队开发中标识、控制和管理软件变更的一种管理。配置管理同软件开发过程紧密相关,配置管理的目的是建立和维护在软件生命周期中软件产品的完整性和一致性,软件测试过程的配置管理和软件开发过程的配置管理是一样的。
16、在软件开发过程中,测试活动的配置管理属于整个软件项目配置管理的一部分,独立的测试组织应建立专门的配置管理系统。 软件测试的配置管理包括以下5个最基本的活动:配置标识、版本控制、变更控制、配置状态报告、配置审计。第八章 面向对象软件测试8.2 面向对象软件测试的不同层次及其特点 一般来说,面向对象的软件测试可分为3个层次(类测试、集成测试、系统测试)或4个层次(方法测试、类测试、类簇测试、系统测试)。 方法测试:方法测试是指对类中的各个方法进行单独的测试。 类测试:类测试的重点是类内方法间的交互和其对象的各个状态。 类簇测试:类簇也叫子系统,有若干各类组成,类簇测试的重点是测试一组协同操作类之间
17、的相互作用。 系统测试:系统测试检验所有类和整个软件系统是否符合要求。 面向对象单元测试主要就是对类成员函数以及类成员函数间的交互进行测试;面向对象单元测试是面向对象集成测试的基础,面向对象集成测试主要对系统内部的相互服务进行测试,如成员函数间的相互作用、类间的消息传递等。面向对象系统测试是基于面向对象集成测试最后阶段的测试,主要以用户需求为测试标准,检验整个软件系统是否符合标准。第九章 软件测试自动化9.2 软件测试自动化的作用和优势:产生可靠的系统改进测试工作质量提高测试工作效率loadrunner, 性能测试工具,可以加负载qtp(quick test professional), 功能
18、测试工具,基于黑盒测试技术综合应用逻辑覆盖测试用例设计基本路径测试用例设计等价类划分测试用例设计判定表测试用例2、针对test函数按照基本路径测试方法设计测试用例。解:int test(int i_count, int i_flag) 1 int i_temp=0;2 while (i_count>0) 3 if (0=i_flag) 4 i_temp=i_count+100;5 break; 6 else 7 if (1=i_flag) 8 i_temp=i_temp+10; 9 else 10 i_temp=i_temp+20; 11 i_count-; 12 return i_te
19、mp; 程序控制流图:134,56,789,1011122程序环路复杂度:cc=4基本路径集:path1 1-2-3-6-7-8-11-2-12path2 1-2-12path3 1-2-3-4-5-12path4 1-2-3-6-7-9-10-11-2-12设计测试用例:用例idi_counti_flag预期输出test11110test2020test320102test413203、试用等价分类法测试学生管理系统中出生日期的输入设计是否符合要求,假设出生年月格式为yyyymmdd,有效出生日期范围为1950年1月1日至1995年12月31日。解:等价类划分输入条件有效等价类无效等价类格式正确
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 手机充电协议书
- 苗床转让协议书
- 苗木赔款协议书
- 蒙草生态协议书
- 融资保证协议书
- 认购合同的协议
- 设备出售协议书
- 设备点检协议书
- 设计代理协议书
- 设计装修协议书
- DL∕T 2528-2022 电力储能基本术语
- DL∕T 1785-2017 电力设备X射线数字成像检测技术导则
- T-CCIIA 0004-2024 精细化工产品分类
- 世界当代史教材
- 至美无相-现代数学天文物理漫谈智慧树知到期末考试答案章节答案2024年中国海洋大学
- 《创伤失血性休克中国急诊专家共识(2023)》解读
- 王立铭进化论讲义
- Hyperion预算管理信息系统介绍
- 第三、四单元综合测试卷(含答案)-统编版语文高一下学期必修下册
- 基本心理需要满足量表BPNS
- 焊缝外观检验规范(5817 VT)
评论
0/150
提交评论