软件测试课复习资料_第1页
软件测试课复习资料_第2页
软件测试课复习资料_第3页
软件测试课复习资料_第4页
软件测试课复习资料_第5页
已阅读5页,还剩11页未读, 继续免费阅读

下载本文档

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

文档简介

1、#Chap 1·软件测试:是由“验证”和“有效性确认”活动构成的整体。 ·结合V模型谈谈开发与测试关系 (1) 需求验证对应验收测试,客户需求的确认测试(2) 系统架构设计的验证对应系统测试(3) 产品详细设计的验证对应功能测试(4) 代码的验证对应单元测试V模型能准确反映出开发活动和测试活动之间的关系,说明:1) 测试活动与开发活动同时启动;2) 测试分层的,开发不同阶段都有对应的测试类型相对应。·了解测试目的、证实与证伪2种观念、测试驱动开发的概念目的:为了保证软件质量。证实:测试是试图验证软件是正确的证伪:测试是为了发现错误而执行一个程序或者系统的过程测试驱

2、动开发:测试在先,编码在后的开发思想。区别于以往的先编码后测试的开发过程,而是在编程之前,先写测试的脚本或设计测试用例。#Chap 2·ISO9126软件质量模型(一层6个即可),并分别说明各个质量属性的含义 (P17高层:软件质量需求评价准则;中层:软件质量设计评价准则;低层:软件质量度量评价功能性:软件所实现的功能达到它的设计规范和满足用户需求的程度可用性:对于一个软件,用户学习、操作、准备输入和理解输出所做努力的程度可靠性:在规定的时间和条件下,软件所能维持其正常的功能操作、性能水平的程度性能:在指定条件下,软件对操作的响应速度和实现某种功能所需的计算机资源的有效程度容量:系统

3、的接受力、容纳或吸收的能力,或某项功能的最大数据量或最大限度,有时需要确定系统特定的需求所能容纳的最大量、所能表现的最大值。可测量性:系统某些特征可以通过一些量化的数据指标描述其当前状态或设定状态可维护性:当一个软件投入运行应用后,需求发生变化、环境改变或软件发生错误时,进行相应修改所做努力的程度兼容性:软件从一个计算机系统或环境移植到另一个系统或环境的难易程度,或者是一个系统和外部条件共同工作的容易程度,可扩展性:指将来增加新功能、扩充系统能力的难易程度·软件缺陷的定义及表现形式软件缺陷是指计算机系统或者程序中存在的任何一种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷、瑕疵,其

4、结果会导致软件产品在某种程度上不能满足用户的需要。(1) 从产品内部看,软陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题(2) 从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背表现形式:1.运行出错,包括运行中断、系统崩溃、界面混乱2.数据计算错误,导致结果不正确。3.功能、特性没有实现或部分实现4.在某种特定条件下没能给出正确或准确的结果5.计算的结果没有满足所需要的精度6.用户界面不美观7.需求规格说明书的问题8.设计不合理,存在缺陷9.实际结果和预期结果不一致10.用户不能接受的其他问题·验证与确认(V&V)的概念及两者区别V&V验证:检验软件

5、是否已正确地实现了产品规格说明书所定义的系统功能和特征。确认:要能保证所生产的软件可追溯到用户需求的一系列活动。区别:验证是检验开发出来的软件产品和设计规格说明书的一致性,即是否满足软件厂商的生产要求。确认就是检验产品功能的有效性,即是否满足用户的真正需求。 ·软件测试的分类:按阶段、按目标、按方法,需要掌握的概念:(P23P25-静态测试和动态测试、黑盒测试和白盒测试-按阶段:单元测试、集成测试、系统测试、验收测试-非功能测试:性能测试、可靠性测试、安全性测试等#Chap 3·白盒测试的概念、常用的逻辑覆盖有哪些,各自的基本思想。白盒测试是测试被测单元内部如何工作的一种方

6、法。其目的是通过检查软件内部的逻辑结构,对软件中的逻辑路径进行覆盖测试;在程序不同地方设立检查点,检查程序的状态,以确定实际运行状态与预期状态是否一致。它允许测试人员对程序内部逻辑结构及有关信息来设计和选择测试用例,对程序的逻辑进行测试,提高代码质量。语句覆盖,判定覆盖,条件覆盖,判定条件覆盖,条件组合覆盖和路径覆盖。语句覆盖:为了暴露程序中的错误,程序中的每条语句至少执行一次。因此语句覆盖的含义是,选择足够多的测试数据,使被测程序中每条语句至少执行一次。语句覆盖是很弱的逻辑覆盖。判定覆盖:比语句覆盖稍强的覆盖标准,判定覆盖的含义是,设计足够的测试用例,使得程序中的每个判定至少都获得一次“真值

7、”或“假值”,或者说使得程序中的每一个取“真”分支和取“假”分支至少经历一次。 条件覆盖:在设计程序中,一个判定语句是有多个条件组合而成的符合判定。为了更彻底的实现逻辑覆盖,可以采用条件覆盖的标准。条件覆盖的含义是,构造一组测试用例,使得每一判定语句中每个逻辑条件的可能值至少满足一次。判定条件覆盖:同时满足判定覆盖和条件覆盖。条件组合覆盖:每个判定中各条件的每一种组合至少出现一次。 路径测试:使程序中每一条可能的路径至少执行一次。·黑盒测试的概念、常用的黑盒测试方法有哪些,各自的基本思想。黑盒测试是把测试对象看作一个黑盒子。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测

8、试软件产品的内部结构和处理过程。采用黑盒技术设计测试用例的方法有:等价类划分、边界值分析、判定表、因果图、正交实验、功能图、错误推测等价类、边界值、判定表、组合测试。#Chap 4·测试过程模型Tmap的生命周期.(P69页)Prepaation(准备)包括可测试性评审、确定技术方法Specification(说明)包括详细设计测试用例、建立测试的基础设施Execution(执行)包括预测试、测试、重新测试、检查、评估等活动Completed(完成)包括维护测试件、评估测试过程Planning&Control(计划和控制)包括评审和研究、开发测试策略、建立测试组织、准备计划、

9、管理和控制等过程改进模型:TMM、TPI、CTP、STEP等;软件工程标准规范的5个级别:国际标准ISO、国家际准GB、行业标准IEEE、企业规范、项目规范 #Chap 5·单元测试的定义和主要任务 (P95 、P97单元测试是对软件基本组成单元进行的测试,而且软件单元是在与程序的其他部分相隔离的情况下进行独立的测试。任务:1.单元中所有独立执行路径测试。2.单元局部数据结构测试。3.单元接口测试。4.单元边界条件测试。5.单元的各条错误处理通路测试。·什么叫驱动和桩?画出单元测试模型图 (P107 +图5-2驱动程序,也称驱动模块,用以模拟被测模块的上级模块,能够调用被测

10、模块。在测试过程中,驱动模块接受测试数据,调用被测模块并把相关的数据传送给被测模块。桩程序,也称桩模块,用以模拟被测模块工作过程中所调用的下层模块。桩模块由被测模块调用,它们一般只进行很少的数据处理,例如打印入口和返回,以便于检验被测模块与其下级模块的接口。#Chap 6·集成测试的模式及各自优缺点集成测试 :是在软件系统集成过程中所进行的测试,其主要目的是检查软件单位之间的接口是否正确。系统集成测试有渐增式测试模式和非渐增式测试模式。 渐增式 优点:(1)发现模块间接口错误较早,易诊断出错误(2)模式测试更彻底 缺点:(1)需要编写软件较多,工作量大(2)需要较多的机器时间 非渐增

11、式 优点:开销小;可以并行测试 缺点:发现模块间接口错误较晚;较难诊断错误·大棒与三明治集成方法的概念及方法应用(给一个模块结构图,写出它的集成图)P129大棒先是对每一个子模块进行测试,然后将所有模块一次性地全部集成起来进行集成测试。三明治集成方法是自两头向中间集成·回归测试的目的及选取用例的策略目的是在程序有修改的情况下保证原有功能正常的一种测试策略和方法·系统负载包括哪些方面?并发用户并发数量,思考时间,每次请求发送的数据量,负载模式常见的负载模式有哪些(flat, ramp-up, 浪涌等#Chap 7·测试和测试测试: 有时也称为室内测试,是由

12、一个用户在开发环境下进行的测试,也可以是开发机构内部的用户在模拟实际操作环境下进行的测试。测试 :是由软件的多个用户在一个或多个用户的实际使用环境下进行的测试。·向前兼容、向后兼容的概念。向后兼容是必须的。 P122·兼容性测试包括软件、数据共享、硬件兼容性。·验收测试内容(可用性/安装/文档/兼容性)、用户参与、真实场景、满足用户需求#Chap 11·自动化测试的定义及内容自动化测试是对手工测试的一种补充,自动化测试不可能完全替代手工测试,因为很多数据的正确性、界面是否美观、业务逻辑的满足程度等都离不开测试人员的人工判断。而仅仅依赖手工测试的话,则会让

13、测试过于低效,尤其是回归测试的重复工作量对测试人员造成了巨大的压力。因此,自动化测试仅仅是某些条件下手工测试的一种补充,而无法全面取代手工测试。·自动化测试的四种脚本类型及相应的含义线性脚本:录制手工执行的测试用例得到的脚本结构化脚本:类似于结构化程序设计,具有各种逻辑结构数据驱动脚本:将测试脚本和数据分离开来关键字驱动脚本:数据驱动脚本的逻辑扩张·测试工具的分类及代表性工具的名称。例:QTP,Selenium,xUnit,Jmeter, LoadRunner,Appscan, Wirshark, SoapUI, Mantis, Bugzilla, JIRA等。#Chap

14、1416·测试用例的定义 测试用例是有效地发现软件缺陷的最小测试执行单位,是为了特定目的而设计的测试数据及与之相关的测试规程的一个特定的集合。·用例执行状态(通过、未通过、未进行测试)·软件缺陷的基本生命周期 P3253个状态:新打开的,已修正,已关闭发现打开:测试人员发现软件缺陷后,提交该缺陷给开发人员。缺陷处在开始状态“”打开修复:开放人员再现、修改代码并进行必要的单元测试,完成缺陷修正。修复关闭:测试人员验证已修改的缺陷,如果该缺陷在新构建的软件包的确不存在,测试人员就关闭这个缺陷。·软件缺陷的常见属性及含义,重点掌握:严重程度、优先级的分类缺陷标

15、识,缺陷类型,缺陷产生可能性,缺陷来源,缺陷原因1.标识:是标记某个缺陷的唯一的表示,可以用数字序号表示2.类型:是根据缺陷的自然属性划分的缺陷种类3.可能性:指缺陷在产品中发生的可能性4.来源:指缺陷所在的地方5.根源:指造成上述错误的根本因素,以寻求软件开发流程的改进、管理水平的提高严重程度:致命的,严重的,一般的,微小的优先级:立即解决,高优先级,正常排队,低优先级/非法计算double dosomething(double a, bc = a/b./数组越界Int MAX_LEN=4;void foo(int array = new intMAX_LEN;for (int i = 0;

16、 i<= MAX_LEN; i+ arrayi=0;/死循环void f1(int i = 0;while ( i < 10i-;/空指针boolean equals(Object a, Object bif (a.getClass( = b.getClass(return true;elsereturn false;附录:V模型1、 V模型 :V模型能准确反映出开发活动和测试活动之间的关系,说明:3) 测试活动与开发活动同时启动;4) 测试分层的,开发不同阶段都有对应的测试类型相对应。附录:白盒测试方法示例使用白盒测试的逻辑覆盖方法测试如下程序段。要求:(1) 画出程序控制流图(

17、2) 分别以语句覆盖、判定覆盖、条件覆盖和条件组合覆盖、路径覆盖方法设计用例,并写出每个用例的执行路径1 If (A>1 && B=0 then2 X=X/A3 If (A>2| X>1 then4 X=X+1测试用例A,B,X执行路径语句覆盖2,0,3ace判定覆盖2,0,3ace1,0,1abd条件组合覆盖2,0,3ace2,1,1abe1,1,1abd1,0,3abe路径覆盖2,0,3ace(L11,0,1abd(L22,1,1abe(L33,0,3acd(L4附录:基本路径测试法示例使用基本路径测试如下程序段。要求:(1) 出控制流图(2) 求出程序圈

18、复杂度(3) 导出测试路径1 void sort(int irecordnum,int itype 2 3 int x=0; 4 int y=0; 5 while(irecordnum->0 6 7 if(itype=0 8 break; 9 else 10 if(itype=1 11 x=x+10; 12 else 13 y=y+20; 14 答:1)2)V(G=10-8+2,其中10是控制流图G中边的数量,8是控制流图中节点的数目。( 边数-节点数+2)5) 可得出程序的基本路径集中有4条独立路径:i. 路径1:4->14ii. 路径2:4->6->7->14

19、iii. 路径3:4->6->9->10->13->4->14iv. 路径4:4->6->9->12->13->4->14附录:黑盒测试方法示例某城市电话号码由三部分组成,分别是:地区码:空白或三位数字;前缀:非0或1开头的三位数字;后缀:4位数字。假设被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合此规定的电话号码(1)分析程序的规格说明,列出输入域等价类(包括有效和无效等价类)(2)根据(1)中的等价类,设计能覆盖所有等价类的测试用例,要求包括输入数据和预期输出,并指出各个测试用例所覆盖的等价类编号附录:代码缺

20、陷模式示例/非法计算double dosomething(double a, bc = a/b./数组越界Int MAX_LEN=4;void foo(int array = new intMAX_LEN;for (int i = 0; i<= MAX_LEN; i+ arrayi=0;/死循环void f1(int i = 0;while ( i < 10i-;/空指针boolean equals(Object a, Object bif (a.getClass( = b.getClass(return true;elsereturn false;附录:组合测试示例对于系统,有A,B,C三因子,每个因子取值为A=A1,A2, B=B1,B2,C=C1,C2 如果是全正交测试:则有2*2*2=8 个用例T1: A1 B1 C1T2: A1 B1 C2T3: A1 B2 C1T4: A1 B2 C2T5: A2 B1 C1T6: A2 B1 C2T7:

温馨提示

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

评论

0/150

提交评论