黑盒测试方法-正交试验法和场景法
- 格式:ppt
- 大小:643.00 KB
- 文档页数:49
⿊盒测试——等价类划分、边界值分析、因果图、状态图、场景、正交试验法⿊盒测试常⽤测试⽅法的选择:1⾸先采⽤等价类划分法来编写测试⽤例2必要时采⽤边界值分析法进⾏补充测试⽤例3采⽤错误推测法再追加测试⽤例4对照程序逻辑,检查⾃⼰设计出的测试⽤例逻辑覆盖程度,若覆盖不够,则需要再补充其他的测试⽤例5如果程序功能含有输⼊条件的组合情况,应⼀开始就采⽤因果图法6如果程序某功能适合⾃动测试,可以采⽤⾃动化测试及随机测试。
什么是⿊盒测试以及优缺点?定义:⿊盒测试把测试对象看做⼀个⿊盒⼦,不⽤考虑程序内部结构和内部特性,依据程序需求规格说明书,检查程序功能是否符合功能说明。
优缺点:优:1功能性测试与软件如何实现⽆关,如果实现发⽣变化,功能性测试仍然可⽤;2测试⽤例编写与软件开发同时进⾏,节省软件开发时间3通过软件的⽤例可⽤设计出⼤部分功能性测试⽤例缺:1测试⽤例数量⼤2测试⽤例可能产⽣很多冗余3功能性测试的覆盖范围不可能达到100%⿊盒测试⽤例设计⽅法?答:1等价类划分法(有意义,合理的输⼊数据组成集合检查是否符合产品需求;⽆意义,不合理的输⼊数据组成的集合推测不符合需求的地⽅)、2边界值分析法(输⼊的边界值进⾏测试)、3因果图法(分析和表达多逻辑条件下执⾏不同操作)、4状态图法(和产品需求反着来,⽐如要求输⼊数字,就输⼊字母,要求输⼊正数,就输⼊负数等)、5场景法(利⽤图解法分析输⼊的各种组合情况,即输⼊多个条件的各种组合及输出情况之间的相互制约关系)、6正交试验法(⽐如要进⾏18次测试,最终选择具有代表性的9次进⾏试验)7其他测试⽅法有:错误推测法、通过测试与失败测试、随机测试边界值划分法:考虑的边界数据类型如数值、速度、字符、地址、位置、尺⼨、数量;以及考虑条件的等价区间:默认、空⽩、空值、零值和⽆。
还要考虑:⾮法、错误、不正确和垃圾数据。
还要测试:程序的状态及切换。
次边界条件:。
黑盒测试的7种测试方法黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。
在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。
黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。
很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。
黑盒测试有7种测试方法分别是等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、功能图法、正交实验法。
下面将一一介绍。
等价类划分法等价类划分是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。
该方法是一种重要的,常用的黑盒测试用例设计方法。
1、划分等价类:等价类是指某个输入域的子集合。
在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。
并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试。
因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据。
取得较好的测试结果。
等价类划分可有两种不同的情况:有效等价类和无效等价类。
有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合。
利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。
无效等价类:与有效等价类的定义恰巧相反。
设计测试用例时,要同时考虑这两种等价类。
因为,软件不仅要能接收合理的数据,也要能经受意外的考验。
这样的测试才能确保软件具有更高的可靠性。
2、划分等价类的方法:下面给出六条确定等价类的原则。
①在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。
实验七⿊盒测试之场景法测试实验[参考答案解析]实验七⿊盒测试之场景法测试实验1.1 实验⽬的1、通过对简单程序进⾏⿊盒测试,熟悉测试过程,对软件测试形成初步了解,并养成良好的测试习惯。
2、掌握⿊盒测试的基础知识,能熟练应⽤场景法进⾏测试⽤例的设计。
1.2 实验平台操作系统:Windows 7或Windows XP1.3 实验内容及要求1、练习1软件系统⼏乎都是⽤事件触发来控制流程的,事件触发时的情景便形成了场景,⽽同⼀事件不同的触发顺序和处理结果就形成事件流。
场景法就是通过⽤例场景描述业务操作流程,从⽤例开始到结束遍历应⽤流程上所有基本流(基本事件)和备选流(分⽀事件)。
下⾯是对某IC卡加油机应⽤系统的基本流和备选流的描述。
基本流A;备选流:(1)使⽤场景法设计测试案例,指出场景涉及到的基本流和备选流,基本流⽤字母A表⽰,备选流⽤题⼲中描述的相应字母表⽰。
场景1:A场景2:A、B场景3:A、C场景4:A、D场景5:A、E(2)场景中的每⼀个场景都需要确定测试⽤例,⼀般采⽤矩阵来确定和管理测试⽤例。
如下表所⽰是⼀种通⽤格式,其中⾏代表各个测试⽤例,列代表测试⽤例的信息。
本例中的测试⽤例包含测试⽤例、ID、场景涤件、测试⽤例中涉及的所有数据元素和预期结果等项⽬。
⾸先确定执⾏⽤例场景所需的数据元素(本例中包括账号、是否⿊名单卡、输⼊油量、账⾯⾦额、加油机油量),然后构建矩阵,最后要确定包含执⾏场景所需的适当条件的测试⽤例。
在下⾯的矩阵中,V 表⽰有效数据元素,I表⽰⽆效数据元素,n/a表⽰不适⽤,例如C01表⽰“成功加油”基本流。
请按上述规定为其它应⽤场景设计⽤例矩阵。
测试⽤例表(3)假如每升油4元⼈民币,⽤户的账户⾦额为1000元,加油机内油量⾜够,那么在A4输⼊油量的过程中,请运⽤边界值分析⽅法为A4选取合适的输⼊数据(即油量,单位;升)。
1. 0升2. 250升3. 251升2、练习2有⼀个在线购物的实例,⽤户进⼊⼀个在线购物⽹站进⾏购物,选购物品后,进⾏在线购买,这时需要使⽤账号登录,登录成功后,进⾏付钱交易,交易成功后,⽣产订购单,完成整个购物过程。
黑盒测试是一种基于证明功能需求和用户最终需求的测试方法,设计黑盒测试用例的方法有如下8种:等价类划分法。
边界值分析法。
因果图法。
判定表驱动测试。
场景法。
功能图法。
错误推测法。
正交试验设计法。
在实际测试工作中,往往是综合使用各种方法才能有效地提高测试效率和测试覆盖率,这就需要认真掌握这些方法的原理,积累更多的测试经历,以有效地提高测试水平和测试效率。
下面就将主要介绍这8种设计黑盒测试用例的方法。
等价类划分等价类划分法是一种典型的、重要的黑盒测试方法,它将程序所有可能的输入数据〔有效的和无效的〕划分成假设干个等价类。
然后从每个局部中选取具有代表性的数据当做测试用例进展合理的分类,测试用例由有效等价类和无效等价类的代表组成,从而保证测试用例具有完整性和代表性。
利用这一方法设计测试用例可以不考虑程序的部构造,以需求规格说明书为依据,选择适当的典型子集,认真分析和推敲说明书的各项需求,特别是功能需求,尽可能多地发现错误。
由于等价类是在需求规格说明书的根底上进展划分的,并且等价类划分不仅可以用来确定测试用例中的数据的输入输出的准确取值围,也可以用来准备中间值、状态和与时间相关的数据以及接口参数等,所以等价类可以用在系统测试、集成测试和组件测试中,在有明确的条件和限制的情况下,利用等价类划分技术可以设计出完备的测试用例。
这种方法可以减少设计一些不必要的测试用例,因为这种测试用例一般使用一样的等价类数据,从而使测试对象得到同样的反映行为。
对于等价类我们从以下几个方面讨论它的划分方法。
1、等价类划分等价类可以划分为有效等价类和无效等价类。
〔1〕有效等价类有效等价类指对于程序规格说明来说,是合理的、有意义的输入数据构成的集合。
利用有效等价类可以检验程序是否实现了规格说明预先规定的功能和性能。
有效等价类可以是一个,也可以是多个,根据系统的输入域划分假设干局部,然后从每个局部中选取少数有代表性数据当做数据测试的测试用例,等价类是输入域的集合。
⿊盒测试设计--正交实验法⼀.⽅法简介 利⽤因果图来设计测试⽤例时, 作为输⼊条件的原因与输出结果之间的因果关系,有时很难从软件需求规格说明中得到。
往往因果关系⾮常庞⼤,以⾄于据此因果图⽽得到的测试⽤例数⽬多的惊⼈,给软件测试带来沉重的负担,为了有效地,合理地减少测试的⼯时与费⽤,可利⽤正交实验设计⽅法进⾏测试⽤例的设计。
正交实验设计⽅法:依据Galois理论,从⼤量的(实验)数据(测试例)中挑选适量的,有代表性的点(例),从⽽合理地安排实验(测试)的⼀种科学实验设计⽅法.类似的⽅法有:聚类分析⽅法,因⼦⽅法⽅法等.利⽤正交实验设计测试⽤例的步骤:1.提取功能说明,构造因⼦--状态表把影响实验指标的条件称为因⼦.⽽影响实验因⼦的条件叫因⼦的状态.利⽤正交实验设计⽅法来设计测试⽤例时,⾸先要根据被测试软件的规格说明书找出影响其功能实现的操作对象和外部因素,把他们当作因⼦,⽽把各个因⼦的取值当作状态.对软件需求规格说明中的功能要求进⾏划分,把整体的概要性的功能要求进⾏层层分解与展开,分解成具体的有相对独⽴性的基本的功能要求.这样就可以把被测试软件中所有的因⼦都确定下来,并为确定个因⼦的权值提供参考的依据.确定因⼦与状态是设计测试⽤例的关键.因此要求尽可能全⾯的正确的确定取值,以确保测试⽤例的设计作到完整与有效。
2.加权筛选,⽣成因素分析表对因⼦与状态的选择可按其重要程度分别加权.可根据各个因⼦及状态的作⽤⼤⼩,出现频率的⼤⼩以及测试的需要,确定权值的⼤⼩。
3.利⽤正交表构造测试数据集利⽤正交实验设计⽅法设计测试⽤例,⽐使⽤等价类划分,边界值分析,因果图等⽅法有以下优点:节省测试⼯作⼯时;可控制⽣成的测试⽤例数量;测试⽤例具有⼀定的覆盖率。
4、正交表的下载地址:⼆、案例s1、选择合适的正交表1)找出因⼦状态,7因⼦5状态(上表中每⾏代表⼀个引⼦,每个因⼦不同的取值代表不同的状态,这⾥去取值最多的⼀个,作为整体的状态数)2)到中下载正交表;有时不⼀定有7因⼦5状态的表,那么就找最接近的,切因⼦数、状态数都要⼤于或等于需求中列出来的因⼦和状态数(请思考下为什么?)这些选择8因⼦7状态的正交表s2、下载下来的正交表如下s3、化简正交表原则:去掉多余的因⼦,每列代表⼀个因⼦,只有7个因⼦,将最后⼀列删除(但不能轻易删除⾏)s4、将正交表内数字替换成具体的因⼦状态,对照第⼀张表,每个数字代表对应因⼦的状态值s5、正交表合并:依据适⽤性合并部分相似的⽤例原则:前⾯⽤例都提到过的状态才能合并,没提到过的不能合并s6、删除⼀些不可能的组合注:(1)编写测试⽤例时,需遵循⼀些基本的原理,例如Linux上是⽆法安装IIS的,第9⾏和37⾏就不能作为⽤例,是不可能存在的组合,需排除(2)在运⾏时,你可以将余下的~单元格填充为最容易的测试,或者填充为最流⾏的配置,或者填充为可能会揭⽰缺陷的选项,⽆论你想使⽤什么标准来选填充值,都是可以的。
⿊盒测试⽤例设计⽅法之正交实验法⼀、正交试验法介绍正交试验法是研究多因素、多⽔平的⼀种试验法,它是利⽤正交表来对试验进⾏设计,通过少数的试验替代全⾯试验,根据正交表的正交性从全⾯试验中挑选适量的、有代表性的点进⾏试验,这些有代表性的点具备了“均匀分散,整齐可⽐”的特点。
本规范只讨论各因素是相互独⽴的正交试验法,各因素相互影响的正交试验法在我们设计测试⽤例的时候⽤不到,所以不提。
正交表是⼀种特制的表格,⼀般⽤L n(m k)表⽰,L代表是正交表,n代表试验次数或正交表的⾏数,k代表最多可安排影响指标因素的个数或正交表的列数,m表⽰每个因素⽔平数,且有n=k*(m-1)+1。
正交试验法原理及特点见。
⼆、使⽤正交试验法的原因对于单因素或两因素试验,因其因素少,试验的设计、实施与分析都⽐较简单。
但在实际⼯作中,常常需要同时考察3个或3个以上的试验因素,若进⾏全⾯试验,试验的规模很⼤,由于时间和成本的限制我们不可能进⾏全⾯试验,但是具体挑其中的哪些测试⽤例进⾏测试我们⼼⾥拿不准,总担⼼不做不挑选的那些测试⽤例会遗漏⼀些严重缺陷。
为了有效的、合理地减少测试的⼯时与费⽤,我们利⽤正交试验法来设计测试⽤例。
正交试验法就是安排多因素试验、寻求最优⽔平组合的⼀种⾼效率的试验设计⽅法。
我们⽤测试实例来进⾏说明使⽤正交试验法设计测试⽤例的好处。
测试需求:某所⼤学通信系共2个班级,刚考完某⼀门课程,想通过“性别”、“班级”和“成绩”这三个查询条件对通信系这门课程的成绩分布,男⼥⽐例或班级⽐例进⾏⼈员查询:根据“性别”=“男,⼥”进⾏查询根据“班级”=“1班,2班”查询根据“成绩”=“及格,不及格”查询按照传统设计——全部测试分析上述测试需求,有3个被测元素,被测元素我们称为因素,每个因素有两个取值,我们称之为⽔平值,所以全部测试⽤例个数是2*2*2=8,参见下表序号性别班级成绩1⼥1班及格2⼥1班不及格3⼥2班及格4⼥2班不及格5男1班及格6男1班不及格7男2班及格8男2班不及格利⽤正交表设计测试⽤例,我们得到的测试⽤例个数是n=3*(2-1)+1=4,对于三因素两⽔平的刚好有L4(23)的正交表可以套⽤,于是⽤正交表试验法得出4个测试⽤例如下:序号性别班级成绩1⼥1班及格2⼥2班不及格3男1班不及格4男2班及格根据实际需要可以在⽤正交试验法设计⽤例的基础上补充⼀些测试⽤例。
黑盒测试设计用例的方法
1. 等价类划分法呀,这就像把东西按类别分堆一样。
比如说测试一个登录功能,那有效用户名和无效用户名就是不同的类别,咱得分别设计用例去测试呀!
2. 边界值分析法,嘿,这可太重要啦!就好比走在悬崖边,那边界的地方就是最需要关注的呀。
像设置密码要求 6 到 12 位,那 5 位、6 位、12 位、13 位可都得好好试试呢!
3. 错误推测法,这就像是我们去猜猜可能会出啥错。
比如一个网页加载,那会不会网络不好就卡住啦?我们就得针对这种情况设计用例呀!
4. 因果图法,哇哦,这就如同顺藤摸瓜一样呢。
比如说某个操作会导致一系列结果,咱就得把这些关系搞清楚,设计出合适的用例。
就像按开关会亮灯,那要是开关坏了呢?
5. 正交试验法,这个有点厉害哦,就像把不同的因素排列组合一下。
比如一个设置有多个选项,那不同的组合都得试试,看有没有问题呀!
6. 功能图法,这就好像是给流程画个地图呀。
从一个功能到另一个功能,中间会有哪些路径,都得用用例覆盖到呢,可不是得认真对待嘛!
7. 场景法,哎呀呀,这就是在脑子里模拟各种场景呢。
比如购物流程,从挑选商品到付款,整个场景都得设计用例好好测试呀!
8. 判定表驱动法,嘿呀,这就跟做个表格选答案似的。
不同的条件对应不同的结果,可不能搞混啦,这可是很关键的呢!
9. 状态迁移法,哇塞,这就好像看着事物的状态变化一样。
比如一个文件的状态从新建到保存到打开,每个变化都得检测到位呀!
我觉得这些方法都超级实用呀,掌握了它们,黑盒测试就能做得更棒啦!。
软件测试——⿊盒测试⽅法1、测试⽤例的定义:是为了特定的⽬的⽽设计的⼀组有测试输⼊、执⾏条件、预期结果的案例(⽂档)2、测试⽤例的构成要素:例如qq邮箱⽤例测试:3、⿊盒测试⿊盒测试⽤例设计⽅法:等价类、边界值、判定表、因果图、正交实验、状态迁移法、场景法、错误推测(1)等价类在所有的测试数据中,具有某种共同特征的数据⼦集,⼀般按照有效等价类和⽆效等价类等价类划分规则:等价类测试⽅法的分析步骤:等价类测试⽤例案例:例⼦:固定电话号测试地区码(3/4位)+电话号码(7/8位)(2)边界值选取正好等于、刚刚好⼤于或刚刚好⼩于边界值作于测试数据注意:⼤量的错误是发⽣在输⼊或输出范围的边界上,⽽不是在输⼊范围的内部边界值的选取:边界值法测试⽤例步骤:边界值法测试⽤例案例:例⼦:固定电话号测试地区码(3/4位)+电话号码(7/8位)(3)判定表法使⽤等价类⽅法时对于输⼊域与输⼊域存在关联时⽆法覆盖例如:两个输⼊不能组合:改⽤判定表法:条件桩:所有的输⼊的组合条件项:不同输⼊条件的组合动作桩:所有的输出的组合动作项:不同输⼊条件的组合的结果规则:⼀组条件与所得结果的组合,⼀个规则就是⼀个测试⽤例判定表法设计⽤例的步骤:案例:(4)因果图法判定表法适合⽤于条件少的时候,因为规则与条件是指数的关系,若条件过多,规则就会随之增多,会增加我们的⼯作量因果图引⼊:因果图中条件与条件,条件与结果的之间的依赖关系:案例:(5)状态迁移法状态迁移图案例:(7)场景法场景法介绍与步骤:基本流、备选流、异常流图解分析:案例:(8)正交实验法因⼦:就是条件(输⼊项)⽔平:就是取值(输⼊项的求值)案例:(9)错误推测法4、⿊盒测试⽅法总结:。
⿊盒测试--场景法现在的软件⼏乎都是⽤事件触发来控制流程的,事件触发时的情景形成了场景何为场景?--场景可以理解为由"那些⼈、什么时间、什么地点、做什么以及如何做"等要素组成的⼀系列相关活动,且场景中的活动还能由⼀系列场景组成场景法组成:场景组合:按上图组合多个不同的场景:场景1:基本流场景2:基本流备选流1场景3:基本流备选流1 备选流2场景4:基本流备选流3场景5:基本流备选流3 备选流1场景6:基本流备选流3 备选流1 备选流2场景7:基本流备选流4场景8:基本流备选流3 备选流4 ⽤例设计步骤1、分析需求,确定出软件的基本流和各项备选流。
2、依据基本流和各项备选流,⽣成不同的场景。
3、针对⽣成的各场景,设计相应的测试⽤例。
4、重新审核⽣成的测试⽤例,去掉多余的部分,并针对最终确定出的测试⽤例,设计测试数据。
案例分析(⼀)例⼦:分析ATM取款机的场景流程,并设计测试⽤例和测试数据 基本流:1.插⼊磁卡2.ATM验证账户正确3. 输⼊密码正确,通过验证4.输⼊取款⾦额5.取出⾦额6.取卡备选流⼀:账户不存在或者受限制备选流⼆:密码不正确,还有输⼊机会备选流三:密码不正确,没有输⼊机会备选流四:卡中余额不⾜备选流五:ATM机中余额不⾜备选流六:超过每⽇最⼤提款限额备选流七:输⼊⾦额⾮100的倍数案例分析(⼆)需求:某旅馆住宿系统⽀持房间⽹上预定业务。
游客访问⽹站进⾏⽹上房间预定操作,选择合适的房间后,进⾏在线预定;此时,需要使⽤个⼈账号登录系统;待登录成功后,进⾏定⾦⽀付(定⾦⾦额为1天的房款);⽀付成功后,⽣成房间预订单,完成整个房间预定流程。
问题:采⽤场景法进⾏测试⽤例设计前提条件:该系统需求中业务流程描述清晰,故采⽤场景法设计⽤例第⼀步:确定软件的基本流和各项备选流基本流备选流备选流X的含义为可于任何步骤中发⽣,故标识为未知数X第⼆步:依据基本流和备选流⽣成不同的场景第三步:针对⽣产的各场景,设计相应的测试⽤例。