系统分析-chap6-testing主要内容_第1页
系统分析-chap6-testing主要内容_第2页
系统分析-chap6-testing主要内容_第3页
系统分析-chap6-testing主要内容_第4页
系统分析-chap6-testing主要内容_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

System ysis

&

Designchapter

6

Software

TestingYI,

Ph.DComputer

Science

Department,

SYSUissyy

:86-20-chapter

6

Software

Testing主要内容测试的基本概念黑盒测试白盒测试测试生命期RUP的测试流程案例实践测试的基本概念测试(testing)的目的与任务目的:发现程序的错误任务:通过执行程序,

潜在的错误纠错(debugging)的目的与任务目的:定位和纠正错误任务:消除

故障,保证程序的可靠运行测试的特性挑剔性抱着为证明程序有错的目的去测试复杂性设计合适的测试用例不彻底性Dijkstra

一句名言:“程序测试只能证明错误的存在,但不能证明错误不存在”测试的种类静态分析(不执行程序)静态分析器代码复审(Code

Review)动态分析(执行程序)黑盒测试测试程序功能白盒测试测试程序结构测试的文档测试计划测试项目的名称各项测试的目的、步骤和进度测试用例的设计测试报告测试项目名称实测结果与期望结果的比较发现的问题测试达到的效果第十一章测试主要内容测试的基本概念黑盒测试白盒测试测试生命期RUP的测试流程案例实践黑盒测试测试程序功能种类等价分类法边界值分析法错误猜测法黑盒测试等价分类法(equivalence

partitioning)把输入数据的可能值划分为若干等价类有效等价类和无效等价类每一无效等价类至少需要一个测试用例等价分类法案例某工厂公开招工,规定报名者岁至36周岁之间(到生年月不在上述范围内,将应在16周止)即出接受,并显示“

不合格”等出错信息。“出生年月”的等价分类输入数据有效等价类无效等价类出生年月①6位数字字符②有非数字字符③少于6个数字符④多于6个数字符对应数值⑤在197002—199003之间⑥<197002⑦>199003月份对应数值⑧在1—12之间⑨等于“0”⑩>12黑盒测试边界值分析法(boundary

valueysis)使被测程序在边界值及其附近运行,从而更有效地

程序中潜藏的错误边界值分析法案例输入等价类测试用例说明测试数据期望结果选取理由出生年月1个数字字符5输入无效输入有效仅有一个合法字符比有效长度恰少一个字符比有效长度恰多一个字符字符最少字符最多类型与长度均有效的输入5个数字字符197057个数字字符1968011有1个非数字字符19705A全是非数字字符AUGUST6个数字字符197002对应数值35周岁197002合格最大合格16周岁199003最小合格>35周岁197001恰大于合格<16周岁199004不合格恰小于合格月份对应数值月份为1月197701输入有效最小月份月份为12月199012最大月份月份<1197700恰小于最小月份月份>12199013输入无效恰大于最大月份黑盒测试错误猜测法(error

guessing)猜测被测程序在哪些地方容易出错针对可能的薄弱环节来设计测试用例第十一章测试主要内容测试的基本概念黑盒测试白盒测试测试生命期RUP的测试流程案例实践白盒测试测试程序结构种类逻辑覆盖测试法路径测试法白盒测试逻辑覆盖测试

ogic

coverage

testing)用流程图来设计测试用例逻辑覆盖测试的5种标准发现错误的能力弱强语句覆盖每条语句至少执行一次判定覆盖每一判定的每个分支至少执行一次条件覆盖每一判定中的每个条件,分别按“真”、“假”至少各执行一次判定/条件覆盖同时满足判定复盖和条件复盖的要求条件组合覆盖求出判定中所有条件的各种可能组合值,每一可能的条件组合至少执行一次逻辑覆盖测试法实例If((A>1)and(B=0))

thenX=X/AIf((A=2)or(X>1))

thenX=X+1A=2

or

X>1aA>1

and

B=0cedX=X+1bX=X/A流程图测试用例设计语句覆盖:能通过路径ace的测试用例A=2

B=0

X=3判定覆盖:能通过路径ace的测试用例A=2

B=0

X=3能通过路径abd的测试用例A=1

B=0

X=1条件覆盖:测试用例A=2

B=0 X=3(满足A>1,b=0,A=2,X>1)测试用例A=1

B=1 X=1(满足A>1,b=0,A=2,X>1均为假)判定/条件覆盖测试用例A=2

B=0

X=3(满足A>1,b=0,A=2,X>1并且两个判定均为真)测试用例A=1

B=1 X=1(满足A>1,b=0,A=2,X>1均为假并且两个判定均为假)条件组合覆盖共有四个条件,产生八种条件组合,如下用例可覆盖所有组合测试用例A=2

B=0 X=3

测试用例A=2测试用例A=1

B=1 X=1

测试用例A=1B=1

X=1B=0

X=3白盒测试路径测试法(path

testing)着眼于程序执行路径的测试方法程序图(program

graph)顺序结构IF选择结构WHILE循环结构UNTIL循环结构CASE多分支结构路径测试法案例分析步骤画出程序图计算圈复杂度(程序图的区域)导出测试用例准备测试用例void Sort(int

iRecordNum,int

iType)1{int

x=0;int

y=0;while

(iRecordNum--

>

0){if(iType=

=0)7

x=y+2;elseif(iType=

=1)10

x=y+10;11

else12

x=y+20;13

}14

}画出其程序流程图和对应的程序图467810111314467148101113程序流程图程序图计算圈复杂度圈复杂度,即程序图中区域的数量4678101113142341导出测试用例可得出四个独立的路径:路径1:4-14路径2:4-6-7-14路径3:4-6-8-10-13-4-14路径4:4-6-8-11-13-4-14根据上面的独立路径,去设计输入数据,使程序分别执行到上面四条路径准备测试用例路径1:4-14输入数据:iRecordNum=0,或者取iRecordNum<0的某一个值预期结果:x=0路径2:4-6-7-14输入数据:iRecordNum=1,iType=0预期结果:x=2路径3:4-6-8-10-13-4-14输入数据:iRecordNum=1,iType=1预期结果:x=10路径4:4-6-8-11-13-4-14输入数据:iRecordNum=1,iType=2预期结果:x=20测试主要内容测试的基本概念黑盒测试白盒测试测试生命期RUP的测试流程案例实践测试生命期多模块程序的测试策略测试的层次性单元(模块)测试(unit

testing)综合(集成)测试(integration

testing)确认测试(validation

testing)系统测试(system

testing)程序错误的类型语法错误结构性错误功能性错误接口错误单元测试目的通过模块测试,使其代码达到模块说明书的需求任务(1)对模块代码进行编译,发现并纠正其语法错误;调用序列是(2)

进行静态分析,验证模块结构及其否正确;(3)

确定模块的测试策略,并据此设计一组测试用例和必要的测试

;(4)

用选定的测试用例对模块进终止标准为止;(5)编制单元测试报告。试,直至满足测试单元测试实施步骤编译静态分析器检查代码评审动态测试测试驱动模块测试桩模块集成测试目的将经过单元测试的模块逐步组装成具有良好一致性的完整的程序任务制订集成测试实施策略确定集成测试的实施步骤,设计测试用例逐一地添加模块,进

试集成测试策略与步骤自顶向下测试先广后深实施步骤先深后广实施步骤由底向上测试混合方式测试(sandwich

testing)对上层模块采取自顶向下测试对关键模块或子系统采取由底向上测试确认测试目的确认组装好的程序是否满足(SRS)的要求任务有效性测试(黑盒测试)配置复审(confinguration

review)验收测试—alpha与beta测试—通用系统测试目的安装到系统中以后,能否与系统的其余部分协调运行协调运行任务测试是否与硬件协调运行测试是否和原来就有的其它测试是否完成SRS对它的要求终止测试的标准规定测试策略和应达标准规定至少要查出的错误数量面象系统的测试OO的测试策略OO测试用例设计OO的测试策略这些属性的OO

的单元测试全面地测试类和对象所封装的属性和操作的整体发现类的所有操作中存在的问题与其他的类协同工作时可能出现的错误OO

的集成测试基于黑盒方法的集成测试基于线程的测试(thread-based

testing)基于使用(use-based)的测试OO的测试策略试OO

的确认测试和系统测试采用传统的黑盒法OOA阶段的用例所描述的用户交互进导出OO系统测试的测试用例对象—行为模型时序图等模拟用户实际使用环境OO

测试用例设计

每个测试用例都要有一个唯一的标识,并与被测试的一个或几个类相关联起来;每个测试用例都要陈述测试的目的;对每个测试用例要有相应的测试步骤,包括被测对象的特定状态、所使用的消息和操作、可能产生的错误、测试需要的外部环境等OO概念对测试用例设计的影响继承的成员函数需要测试子类的测试用例可以参照父类类测试用例设计基于故障的测试用例设计基于用例的测试用例设计类间测试用例设计类—关系模型类—行为模型测试主要内容测试的基本概念黑盒测试白盒测试测试生命期RUP的测试流程案例实践测试流程制定测试计划测试计划迭代测试用例文件夹测试用例确定和描述要实施和执行的测试设计测试确定、描述和生成测试过程和测试用例作为测试用例设计的部分,可以确定:执

试需要的基本步骤集合如何使测试的项目或特征有效适当地工作测试用例的前置条件测试用例的后置条件可接受标准设计测试示例脚印代表步骤(手工测试时被测试

执行

);勾代表检验点(关于应用程序状态的一个问题)设计测试示例前置条件后置条件可接受标准测试用例设计(新建课程表)实施测试实施(记录、生成或编写)设计测试中定义的测试过程,并输出测试自动测试手工测试测试用例-〉手工测试Rational

ManualTest创建手工测试实施测试示例由测试用例设计创建手工测试实施测试示例RationalManualTest创建手工测试执

试确保整个系统按既定

温馨提示

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

评论

0/150

提交评论