大学课程《软件工程经济学》PPT课件:第8章_软件测试.pptx
- 文档编号:18828638
- 上传时间:2023-12-20
- 格式:PPTX
- 页数:64
- 大小:1.30MB
大学课程《软件工程经济学》PPT课件:第8章_软件测试.pptx
《大学课程《软件工程经济学》PPT课件:第8章_软件测试.pptx》由会员分享,可在线阅读,更多相关《大学课程《软件工程经济学》PPT课件:第8章_软件测试.pptx(64页珍藏版)》请在冰点文库上搜索。
软件工程经济学,第1章绪论,SoftwareEngineeringEconomics,叶小莺,软件工程经济学,SoftwareEngineeringEconomics,叶小莺,第8章软件测试,软件测试是指在规定的条件下对程序进行操作,来发现程序错误,衡量软件质量,并对其是否满足设计要求进行评估的过程。
内容导航,CONTENTS,软件测试的类型,软件测试的模型,8.1,8.2,常用软件测试技术型,8.3,8.1软件测试的模型,软件测试模型(SoftTestModel)是软件测试与测试对象的基本特征、基本关系的抽象。
是测试理论家们根据大量的实际测试应用所总结出来的,能够代表某一种应用的内在规律,并对应于适合此类应用的一组测试性框架。
8.1.1软件测试V模型,8.1.2软件测试W模型,8.1.3软件测试H模型,8.1.4软件测试X模型,8.1.5前置测试模型,内容导航,CONTENTS,软件测试的类型,软件测试的模型,8.1,8.2,常用软件测试技术型,8.3,8.2软件测试的类型,8.2.1按开发阶段划分,单元测试,集成测试,验收测试,系统测试,8.2软件测试的类型,8.2.2按测试实施组织划分,用户方测试,开发方测试,第三方测试,8.2软件测试的类型,8.2.3按测试技术划分,8.2软件测试的类型,8.2.4按测试执行方式划分,静态测试,动态测试,8.2软件测试的类型,8.2.5按测试对象类型划分,功能测试界面测试流程测试接口测试安装测试,文档测试源代码测试数据库测试网络测试性能测试,8.2软件测试的类型,8.2.6按测试属性划分,8.2软件测试的类型,8.2.7按测试地域划分,按测试地域划分,本地化测试,国际化测试,内容导航,CONTENTS,软件测试的类型,软件测试的模型,8.1,8.2,常用软件测试技术型,8.3,8.3.1黑盒测试法,1.测试区域确定法,1)等价类划分法等价类划分法是将软件程序的输入区域划分为若干子集,然后从每一个子集中选取少数具有代表性的数据作为测试用例。
每一类的代表性数据在测试中的作用等价于这一类中的其他值,划分等价类的方法有以下6种。
(1)在输入条件规定了取值范围或值的个数时,可确立一个有效等价类与两个无效等价类。
(2)在输入条件规定了输入值的集合或规定了“必须如何”的条件时,可确立一个有效等价类与一个无效等价类。
(3)在输入条件是一个布尔量时,可确定一个有效等价类与一个无效等价类。
测试区域确定法分为等价类划分法与边界值分析法。
8.3.1黑盒测试法,1)等价类划分法,(4)在规定了输入数据的一组值(假设是n个),且程序要对每一个输入值分别处理时,可确立n个有效等价类与一个无效等价类。
(5)在规定了输入数据必须遵守的规则时,可确立一个有效等价类(符合规则)与若干个无效等价类(从不同角度违反规则)。
(6)在确知已划分的等价类中各元素在程序处理中的方式不同时,应再将该等价类进一步划分为更小的等价类。
8.3.1黑盒测试法,在确立了等价类后,需要建立等价类表,列出所有划分出的等价类,再从划分出的等价类中按以下3个原则设计测试用例。
(1)必须为每一个等价类确定一个唯一的编号。
(2)设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步骤,直到所有的有效等价类完全被覆盖为止。
(3)设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效的等价类,重复这一步骤,直到所有的无效等价类完全被覆盖为止。
1)等价类划分法,8.3.1黑盒测试法,【例8.1】国内固定电话号码均由两部分组成,分别是以0开头的三位或四位数字的地区码,以及以非0、非1开头的七位或八位数字的电话号码。
假定测试程序能接受所有符合上述规定的电话号码,拒绝所有不符合规定的电话号码,请使用等价分类法来设计测试用例。
1)等价类划分法,8.3.1黑盒测试法,例8.1解:
步骤:
划分等价类并编号,如表8-1所示:
8.3.1黑盒测试法,例8.1解:
步骤:
为有效等价类设计测试用例,如表8-2所示:
8.3.1黑盒测试法,例8.1解:
步骤:
为每一个无效等价类至少设计一个测试用例,如表8-3所示。
8.3.1黑盒测试法,2)边界值分析法,边界值分析法是指对输入或输出的边界值进行测试的一种黑盒测试法。
软件测试中通常将边界值分析法作为对等价类划分法的有效补充,故其测试用例一般取自等价类的边界。
软件项目中不少错误的发生通常是在输入或输出范围的边界上,而不是发生在输入输出的范围内,故针对各种边界情况来设计测试用例,便可查出更多的错误。
边界值分析法不是从等价类中随便挑一个来作为代表,而是将每个等价类的每个边界都要作为测试条件,不仅需考虑输入条件,还需考虑输出空间所产生的测试情况。
8.3.1黑盒测试法,2)边界值分析法,如果输入条件规定了值的范围,就应取刚达到所规定范围的边界值与刚刚超越所规定范围边界的值来作为测试输入数据。
如果输入条件规定了值的个数,就用最大个数,最小个数,比最小个数少1,比最大个数多1的数来作为测试数据。
将、种的2条原则应用于输出条件,即设计测试用例使输出值达到边界值及其左右的值。
如果程序的规格说明所给出的输入域或输出域是有序集合,就应选取集合的第1个元素与最后1个元素来作为测试用例。
如果程序中使用了1个内部的数据结构,就应选择这个内部数据结构的边界上的值来作为测试用例。
分析规格说明,尽可能地找出其他可能的边界条件。
边界值分析法选择测试用例原则有以下6种:
8.3.1黑盒测试法,【例8.2】某软件系统要求输入的范围是300至800,采用边界值分析法设计测试用例。
解:
根据边界值分析法测试用例的取值原则,应取刚达到与刚超出取值范围的值来作为测试用例。
对于边界300,应取299和300;对于边界800,应取800和801。
2)边界值分析法,8.3.1黑盒测试法,2.组合覆盖法,组合覆盖法是设计尽可能少的测试用例,但务必使各个被测元素中的各类测试数据组合都被至少执行一次。
根据覆盖程度不同,组合覆盖法可为全组合覆盖法、成对组合覆盖法以及正交实验设计法三类。
1)全组合覆盖法全组合覆盖法是将所有被测元素组合起来,每个元素的值都至少遍历1次。
该法覆盖率较高,但是测试用例量较大,且会产生冗余。
8.3.1黑盒测试法,2.组合覆盖法,2)成对组合(Pair-Wise)覆盖法成对组合覆盖法,又称为两两组合或者对对组合覆盖法,它是将所有被测元素按照两两组合的原则所产生的。
成对组合覆盖法要求任意两个元素(输入条件)的所有两两组合至少要被覆盖1次。
成对组合覆盖法的设计用例步骤如下:
构造对偶表设计对偶表的列数是被测试的变量个数,在列上标出变量名称,按可能取值的数量按降序排列各个变量。
设计表格的行数的计算方法是:
如果第1列的可能取值个数是X1,第2列的可能取值个数是Y2,表中的行数至少为X1*Y2(即至少要设计X1*Y2个测试用例)。
8.3.1黑盒测试法,2.组合覆盖法,2)成对组合(Pair-Wise)覆盖法填写对偶表步骤1:
对偶表第1列的填写规则是:
每次重复第1列变量的各个取值Y2次。
约定第1个变量的相同取值构成一个段(最好在各个段空出一行,再重复给出下一个取值)。
步骤2:
第2列的填写规则是:
对于第1个变量的每个段列出第2个变量的所有取值。
步骤3:
增加第3列,使得每个段要包含第3列变量的所有取值,并且这些取值的顺序要使第3列变量和第2列变量也构成全对偶。
步骤4:
依次增加第4列、第5列方法同步骤3,检查各变量之间是否构成全对偶,直至所有变量列完为止。
8.3.1黑盒测试法,2.组合覆盖法,3)正交实验设计法正交实验设计法是用已设计好的正交表来安排试验并进行数据分析的一种测试方法。
正交实验设计法可用最少的测试用例达到来最高的测试覆盖率。
正交表是一整套规则的设计表格,用Ln(tc)标识,其中L为正交表的代号,n为试验的次数(行数),t为水平数,c为因子数(列数)。
正交表的每一列中各数字出现的次数都一样多,任何两列所构成的有序数对出现的次数都一样多。
8.3.1黑盒测试法,【例8.3】常用的MicrosoftPowerPoint软件打印功能的打印范围有:
全部、当前、选定三种情况;打印内容有:
整页幻灯片、备注页、大纲、讲义共四种方式;打印颜色/灰度有颜色、灰度、纯黑白三种设置;打印效果有幻灯片加框、不加框两种效果。
请利用正交表设计测试用例。
3)正交实验设计法,8.3.1黑盒测试法,例8.3解:
步骤:
可从例题中得出有四个因素,每个因素的水平分别为3,4,3,2。
步骤:
给每个因素指定代号。
打印范围代号:
全部a1、当前a2、选定a3;打印内容代号:
整页幻灯片b1、备注页b2、大纲b3、讲义b4;打印颜色/灰度代号:
颜色c1、灰度c2、纯黑白c3;打印效果代号:
加框d1、不加框d2。
步骤:
根据例题题目给出的打印选项可以得出此例是一个混合正交表,需要行数是1*(4-1)+2*(3-1)+1*(2-1)+1=9;由于3是9的因子,而4和2不是9的因子,所以取最小行数是12即L12(3*4*2)。
8.3.1黑盒测试法,例8.2解:
步骤:
设计正交表测试用例,如表8-4所示。
8.3.1黑盒测试法,3.逻辑推断法,1)因果图法因果图法是根据输入条件组合、约束关系与输出条件的因果关系,分析输入条件的各种组合情况,来设计测试用例的方法。
因果图法生成测试用例的过程如下:
首先将规格说明分解为可执行的片段。
确定规格说明中的因果关系。
其中“因”是指一个明确的输入条件或输入条件的等价类;“果”则是指一个输出条件或系统转换(输入对程序或系统状态的延续影响)。
分析规格说明的语义内容,并将其转换为连接因果关系的布尔图。
给图加上注解符号,说明由于语法或环境的限制而不能联系起来的“因”和“果”。
通过跟踪图中的状态变化情况,将因果图转换成一个有限项的判定表。
将判定表中的列转换成测试用例。
逻辑推断法分为因果图法、判定表法和大纲法等。
8.3.1黑盒测试法,1)因果图法,8.3.1黑盒测试法,1)因果图法,8.3.1黑盒测试法,1)因果图法,8.3.1黑盒测试法,【例8.4】某软件规格说明书有如下要求:
第1列字符必须是A或B,第2列字符必须是一个数字,在此情况下进行文件的修改,但如果第1列字符不正确,则给出信息L;如果第2列字符不是数字,则给出信息M,请绘制因果图、列出判定表,并写出相关测试用例。
1)因果图法,8.3.1黑盒测试法,例8.4解:
步骤:
根据题意,分析原因与结果。
“原因”为:
1第1列字符是A;2第1列字符是B;3第2列字符是一个数字。
“结果”为:
21修改文件;22给出信息L;23给出信息M。
8.3.1黑盒测试法,例8.4解:
步骤:
对应的因果图如图8-9所示。
其中,11为中间节点,考虑到原则1和原因不可能同时为1,因此在因果图上施加E约束。
8.3.1黑盒测试法,例8.4解:
步骤:
依据图8-9中的因果图列出判定表,如表8.5所示。
步骤:
根据表8.5中的判定表,可将测试用例设定为B8、Ba、A7、AC、E5、%Z。
8.3.1黑盒测试法,2)判定表法,判定表法是黑盒测试法中最为严格,且最具逻辑性的测试方法。
判定表是分析和表达多逻辑条件下执行不同操作情况的工具。
判定表通常由以下四个部分组成:
条件桩,主要列出问题的所有条件。
条件项,主要针对条件桩给出的条件来列出所有可能的取值。
动作桩,列出问题规定的所可能采取的操作。
动作项,指出在条件项的各组取值情况下所应采取的动作。
8.3.1黑盒测试法,2)判定表法,构造判定表通常有以下5个步骤:
确定规则的个数。
若有n个条件,则判定表就有2n个规则;列出所有的条件桩与动作桩;填入条件项;填入动作项,得到初始的判定表;简化判定表,合并相似的规则。
8.3.1黑盒测试法,【例8.5】某设备管理系统包含的要求是:
对于功率大于44.1KW的机器,如果维修记录不全或者已运行8年以上的机器必须予以优先的维修处理,请依此建立测试判定表。
2)判定表法,8.3.1黑盒测试法,例8.5解:
步骤:
确定规则的个数。
其中输入条件的个数为3,每个条件与动作的取值:
用1代表“是”或0代表“否”,规则个数为:
23=8。
步骤:
列出所有的条件桩与动作桩。
条件桩:
A1功率大于44.1KW马力。
A2维修记录不全。
A3运行8年以上。
动作桩:
B1优先维修处理。
B2其他处理。
8.3.1黑盒测试法,例8.5解:
步骤:
先填入条件桩。
如表8-6所示。
8.3.1黑盒测试法,例8.5解:
再填入动作桩。
如表8-7所示。
8.3.1黑盒测试法,例8.5解:
步骤:
简化判定表,合并相似规则:
动作序号1、2合并成
(1),5、7合并成(4),6、8合并成(5),原表8-7中的动作序号3、4分别在新的判定表中表示为
(2)和(3)则最终得到的判定表如表8-8所示。
8.3.1黑盒测试法,3)大纲法,大纲法是为了列出各种测试条件,将需求转换为大纲形式的测试方法,是一种着眼于需求的方法。
大纲通常表示为树状结构,在根和叶节点之间存在唯一的路径。
大纲中的每条路径定义了一个特定的输入条件集合,主要用于定义测试用例。
树中叶子的数量或大纲中的路径给出了测试所有功能所需测试用例的大概数量。
8.3.1黑盒测试法,4.业务路径覆盖法,1)场景分析法场景主要有正常用例场景、异常用例场景、备选用例场景以及假定推测场景4种类型。
场景分析法一般通过正常的用例场景分析开始,再着手其他的场景分析。
场景分析法一般包括基本流和备选流,从一个流程开始,通过描述经过的路径来确定过程,经过遍历所有的基本流和备选流来完成整个场景,8.3.1黑盒测试法,【例8.6】如图8-11所示是某银行自助提款机的工作流程示意图。
请采用场景分析法设计该提款机提款功能的测试用例。
8.3.1黑盒测试法,例8.6解:
步骤一:
根据图8-11的示意图,确定基本流与各项备选流。
基本流:
插入银行卡输入账户密码选择提款项输入/选择提款金额成功提款。
备选流:
账户不存在/账户类型有误。
备选流:
密码输入错误(还有输入机会)。
备选流:
密码输入错误(没有输入机会)。
备选流:
账户余额不足。
备选流:
自助提款机内没有现金。
备选流:
自助提款机内现金不足。
8.3.1黑盒测试法,例8.6解:
步骤二:
根据基本流与备选流来确定测试场景。
场景:
提款成功,基本流。
场景:
账户不存在/账户类型有误,基本流和备选流。
场景:
密码输入错误(还有输入机会),基本流和备选流。
场景:
密码输入错误(没有输入机会),基本流和备选流。
场景:
账户余额不足,基本流和备选流。
场景:
自助提款机内没有现金,基本流和备选流。
场景:
自助提款机内现金不足,基本流和备选流,8.3.1黑盒测试法,例8.6解:
步骤三:
针对每个场景生成相应的测试用例,如表8-9所示。
8.3.1黑盒测试法,2)功能图法,功能图法是指先使用功能图形来表示程序功能的说明,再机械的生成功能图对应的测试用例的测试方法。
功能图法属于一种黑、白盒两种测试方法相混合的测试用例设计方法,是一种动态说明问题的测试方法。
使用功能图生成测试用例的步骤如下:
生成局部测试用例。
在功能图的每个状态中,由因果图来生成局部测试用例。
生成测试路径。
生成从初始状态到最后状态的测试路径。
合成测试用例。
合成测试路径和功能图中每个状态的局部测试用例。
8.3.1黑盒测试法,2)功能图法,【例8.7】某IT企业的某员工在其OA系统中申请购买物资,申购单由该员工所在部门负责人、财务总监、分管副总审批,审批人拒绝时流程结束。
申购流程完成时,申请人、财务总监都能收到通知。
请使用功能图法设计测试用例。
8.3.1黑盒测试法,2)功能图法,步骤:
根据题目需求说明画出相关物质申购功能流程图,如图8-12所示。
8.3.1黑盒测试法,2)功能图法,步骤:
根据图8-12的功能流程图生成相应的测试路径。
审批(部门领导),流程继续(同意)。
审批(部门领导),流程结束(拒绝)。
审批(财务总监),流程继续(同意)。
审批(账务总监),流程结束(拒绝)。
审批(分管副总),流程继续(同意)。
审批(分管副总),流程结束(拒绝)。
申购流程完成时,发送通知。
8.3.1黑盒测试法,2)功能图法,由以上状态生成四种测试路径如表8-10所示:
表8-10例8.7测试路径表,审批(部门领导),流程继续(同意)。
审批(部门领导),流程结束(拒绝)。
审批(财务总监),流程继续(同意)。
审批(账务总监),流程结束(拒绝)。
审批(分管副总),流程继续(同意)。
审批(分管副总),流程结束(拒绝)。
申购流程完成时,发送通知。
8.3.1黑盒测试法,2)功能图法,步骤:
由表8-10中的测试路径生成相应的测试用例,详见表8-11。
表8-11例8.7测试用例表,8.3.2白盒测试法,THANKS,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程经济学 大学 课程 软件工程 经济学 PPT 课件 软件 测试