第2章 黑盒测试场景法
- 格式:ppt
- 大小:141.50 KB
- 文档页数:19
实验七-黑盒测试之场景法测试实验(参考答案)实验七黑盒测试之场景法测试实验1.1 实验目的1、通过对简单程序进行黑盒测试,熟悉测试过程,对软件测试形成初步了解,并养成良好的测试习惯。
2、掌握黑盒测试的基础知识,能熟练应用场景法进行测试用例的设计。
1.2 实验平台操作系统:Windows 7或Windows XP1.3 实验内容及要求1、练习1软件系统几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。
场景法就是通过用例场景描述业务操作流程,从用例开始到结束遍历应用流程上所有基本流(基本事件)和备选流(分支事件)。
下面是对某IC卡加油机应用系统的基本流和备选流的描述。
基本流A;序号用例名称用例描述1 准备加油客户将IC加油卡插入加油机2 验证加油加油机从加油卡的磁条中读取账户代码,并检查它是否属于卡可以接收的加油卡3 验证黑名单加油机验证卡账户是否存在于黑名单中,如果属于黑名单,加油机吞卡4 输入购油量客户输入需要购买的汽油数量5 加油加油机完成加油操作,从加油卡中扣除相应金额6 返回加油卡退还加油卡备选流:序号用例名称用例描述B 加油卡无效在基本流A2过程中,该卡不能够识别或是非本机可以使用的IC 卡,加油机退卡,并退出基本流C 卡账户属于黑在基本流A3过程中,判断该卡账产属于黑名单,例如:已经挂失,加油机名单吞卡退出基本流D 加油卡账面现金不足系统判断加油卡内现金不足,重新加入基本流A4,或选择退卡E 加油机油量不足系统判断加油机内油量不足,重新加入基本流A4,或选择退卡(1)使用场景法设计测试案例,指出场景涉及到的基本流和备选流,基本流用字母A表示,备选流用题干中描述的相应字母表示。
场景1:A场景2:A、B场景3:A、C场景4:A、D场景5:A、E(2)场景中的每一个场景都需要确定测试用例,一般采用矩阵来确定和管理测试用例。
如下表所示是一种通用格式,其中行代表各个测试用例,列代表测试用例的信息。
⿊盒测试——等价类划分、边界值分析、因果图、状态图、场景、正交试验法⿊盒测试常⽤测试⽅法的选择:1⾸先采⽤等价类划分法来编写测试⽤例2必要时采⽤边界值分析法进⾏补充测试⽤例3采⽤错误推测法再追加测试⽤例4对照程序逻辑,检查⾃⼰设计出的测试⽤例逻辑覆盖程度,若覆盖不够,则需要再补充其他的测试⽤例5如果程序功能含有输⼊条件的组合情况,应⼀开始就采⽤因果图法6如果程序某功能适合⾃动测试,可以采⽤⾃动化测试及随机测试。
什么是⿊盒测试以及优缺点?定义:⿊盒测试把测试对象看做⼀个⿊盒⼦,不⽤考虑程序内部结构和内部特性,依据程序需求规格说明书,检查程序功能是否符合功能说明。
优缺点:优:1功能性测试与软件如何实现⽆关,如果实现发⽣变化,功能性测试仍然可⽤;2测试⽤例编写与软件开发同时进⾏,节省软件开发时间3通过软件的⽤例可⽤设计出⼤部分功能性测试⽤例缺:1测试⽤例数量⼤2测试⽤例可能产⽣很多冗余3功能性测试的覆盖范围不可能达到100%⿊盒测试⽤例设计⽅法?答:1等价类划分法(有意义,合理的输⼊数据组成集合检查是否符合产品需求;⽆意义,不合理的输⼊数据组成的集合推测不符合需求的地⽅)、2边界值分析法(输⼊的边界值进⾏测试)、3因果图法(分析和表达多逻辑条件下执⾏不同操作)、4状态图法(和产品需求反着来,⽐如要求输⼊数字,就输⼊字母,要求输⼊正数,就输⼊负数等)、5场景法(利⽤图解法分析输⼊的各种组合情况,即输⼊多个条件的各种组合及输出情况之间的相互制约关系)、6正交试验法(⽐如要进⾏18次测试,最终选择具有代表性的9次进⾏试验)7其他测试⽅法有:错误推测法、通过测试与失败测试、随机测试边界值划分法:考虑的边界数据类型如数值、速度、字符、地址、位置、尺⼨、数量;以及考虑条件的等价区间:默认、空⽩、空值、零值和⽆。
还要考虑:⾮法、错误、不正确和垃圾数据。
还要测试:程序的状态及切换。
次边界条件:。
黑盒测试具体例子黑盒测试是一种软件测试方法,测试人员主要关注软件的输入与输出,而不考虑内部结构或代码实现细节。
在黑盒测试中,测试人员通过分析需求规格说明书等文档,设计测试用例来验证软件功能的正确性。
下面将介绍几个黑盒测试的具体例子。
1. 登录功能测试假设我们要测试一个网站的登录功能,我们可以设计以下测试用例来进行黑盒测试:•测试用例1:输入正确的用户名和密码,验证是否能成功登录;•测试用例2:输入错误的用户名,验证是否提示“用户名不存在”的错误信息;•测试用例3:输入错误的密码,验证是否提示“密码错误”的错误信息;•测试用例4:输入超长的用户名或密码,验证系统是否做了长度限制处理;•测试用例5:在登录界面不输入任何信息,验证系统是否能识别为空的输入并给出相应提示。
通过以上测试用例可以验证登录功能在不同情况下的表现,保证其在各种情况下都能正常运作。
2. 购物车功能测试假设我们要测试一个电商网站的购物车功能,我们可以设计以下测试用例进行黑盒测试:•测试用例1:向购物车添加商品,验证商品数量是否正确增加;•测试用例2:修改购物车中商品的数量,验证价格是否正确计算;•测试用例3:删除购物车中的商品,验证删除后购物车是否为空;•测试用例4:尝试向购物车中添加数量超过库存的商品,验证系统是否给出相应提示;•测试用例5:尝试在未登录状态下进行购物车操作,验证系统是否要求用户先登录。
通过以上测试用例可以验证购物车功能在各种操作下的正确性,避免在实际使用中出现问题。
3. 搜索功能测试假设我们要测试一个搜索引擎的搜索功能,我们可以设计以下测试用例进行黑盒测试:•测试用例1:输入关键词进行搜索,验证搜索结果的相关性和准确性;•测试用例2:输入特殊字符进行搜索,验证系统是否能正确处理这些特殊字符;•测试用例3:输入不存在的关键词进行搜索,验证系统是否能给出“无结果”提示;•测试用例4:在搜索结果页面尝试使用筛选功能,验证筛选条件是否有效;•测试用例5:在搜索过程中断网重连,验证系统是否能正确处理这种情况。
⿊盒测试--场景法现在的软件⼏乎都是⽤事件触发来控制流程的,事件触发时的情景形成了场景何为场景?--场景可以理解为由"那些⼈、什么时间、什么地点、做什么以及如何做"等要素组成的⼀系列相关活动,且场景中的活动还能由⼀系列场景组成场景法组成:场景组合:按上图组合多个不同的场景:场景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第⼆步:依据基本流和备选流⽣成不同的场景第三步:针对⽣产的各场景,设计相应的测试⽤例。
⿊盒测试⽤例设计⽅法⼆(因果图法、判定表法、场景法)测试步骤⼀、因果图法1.1什么是因果图法因果图是⼀种适合于描述对于多种输⼊条件组合的测试⽅法根据输⼊条件的组合、约束关系和输出条件的因果关系,分析输⼊条件的各种组合情况,从⽽设计测试⽤例的⽅法它适合于检查程序输⼊条件涉及的各种组合情况。
1.2因果图步骤第⼀步:根据功能说明书中规定的原因和结果之间的关系画出因果图恒等:原因A成⽴,结果B⼀定成⽴⾮:愿意A成⽴时,结果B⼀定不成⽴或:原因A、B、C三者只要有⼀个成⽴,结果D就⼀定成⽴与:原因A、B、C都成⽴时,结果D才会出现第⼆步:根据功能说明在因果图中加上约束条件其中互斥、包含、唯⼀、要求是对原因的约束,屏蔽是对结果的约束。
它们的含义如下:1、互斥(exclusive):表⽰不同时为1,即a,b,c中⾄多只有⼀个12、包含(include):表⽰⾄少有⼀个1,即a,b,c中不同时为03、唯⼀(only):表⽰a,b,c中有且仅有⼀个14、要求(request):表⽰若a=1,则b必须为1。
即不可能a=1且b=05、屏蔽(mask):表⽰若a=1,则b必须为0(当你收到注册成功的提⽰,就⼀定不会收到数据填写错误的提⽰)1.3因果图使⽤实例例:阅读和分析功能说明书,识别出“原因”和“结果”,并加以编号(1)有⼀个饮料⾃动售货机(处理单价为5⾓钱)的控制处理软件,它的软件规格说明如下若投⼊5⾓钱的硬币,按下“橙汁”或“啤酒”的按钮,则相应的饮料就送出来。
若投⼊1元钱的硬币,同样也是按“橙汁”或“啤酒”的按钮,则⾃动售货机在送出相应饮料的同时退回5⾓钱的硬币。
分析原因和结果画出原因和结果之间的关系(部分关系)按照需求描述原因、结果的约束因果图使⽤中的局限性:当原因和结果很多的时候,它们之间的关系连线就会很多,导致因果图的可读性变差。
因此⽤作局部的⼩功能(原因和结果不是很多的时候)分析。
列出所有的原因和结果的列表,设计初步的测试⽤例步骤C5:这是⼀种bug,不能做测试设计。
软件测试之⿊盒测试测试⽅法选择的综合策略:1. ⾸先进⾏等价类划分,包括输⼊条件和输出条件的等价划分,将⽆限测试变成有限测试,这是减少⼯作量和提⾼测试效率最有效的⽅法2. 在任何情况下,都必须使⽤边界值分析法,经验表明,⽤这种⽅法设计出的⽤例,发现程序错误的能⼒最强3. 可以⽤错误推测法追加⼀些⽤例,这需要依靠测试⼯程师的经验4. 对照程序逻辑,检查出已设计出的测试⽤例的逻辑覆盖程度,如果没有⾜够覆盖,应当再补充⾜够的测试⽤例5. 如果程序说明中有输⼊条件的组合情况,则⼀开始就可以选⽤因果图或判定表驱动法设计测试⽤例6. 对于参数配置类型的软件,要⽤正交试验法选择较少的组合⽅式,达到最佳效果7. 对于业务流清晰的系统,可利⽤场景法贯穿整个测试案例过程,在案例中综合使⽤各种设计⽅法⿊盒测试⽤例设计⽅法:等价类划分边界值分析法决策表法因果图错误推测法正交试验法场景法等价划分类:将不能穷举的测试过程进⾏合理分类,从⽽保证设计出来的测试⽤例具有完整性和代表性把所有可能的输⼊数据(有效的和⽆效的)划分成若⼲个等价的⼦集(称为等价类),使得每个⼦集中的⼀个典型值在测试中的作⽤与这⼀⼦集中所有其它值的作⽤相同有效等价类:对于程序的需求规格说明书来说是合理的,有意义的的输⼊数据组成的集合。
利⽤有效性等价类可以检验程序是否实现了规格说明书中所要求的功能或性能。
⽆效等价类:与有效等价类正好相反,⽆效等价类指对程序的规格说明是不合理的或⽆意义的数据所构成的集合。
⽆效等价类⾄少应该有⼀个,也可能有多个。
如何划分等价类:⾸先从程序的规格说明书种找出各个输⼊条件,在为每个输⼊条件划分两个或多个等价类,形成若⼲的互不相交的⼦集确定等价类划分法设计测试⽤例通常分两步进⾏:1. 确定等价类,列出等价类表。
2. 确定测试⽤例。
等价划分类的原则:1. 按区间划分: 在输⼊条件规定了取值范围或值的个数的情况下,则可以确⽴⼀个有效等价类和两个⽆效等价类。
黑盒测试的用例方法是什么在软件测试中,黑盒测试是一种针对软件功能进行测试的方法,测试人员不需要了解软件内部的实现细节,而是基于功能规格来设计测试用例。
黑盒测试的目的是验证软件功能是否按照用户需求正确运行。
为了有效地进行黑盒测试,测试人员需要采用一定的用例方法来设计测试案例,以覆盖各种可能的情况。
等价类划分法等价类划分法是黑盒测试中常用的用例设计方法之一。
该方法将输入数据划分为若干等价类,然后从每个等价类中选择一个典型值作为测试数据。
通过对典型值的测试,可以有效地发现输入数据的各种情况下软件的行为。
例如,对于一个要求输入1到100之间整数的软件功能,可以分为小于1、大于100和1到100的三个等价类。
边界值分析法边界值分析法是黑盒测试用例设计中的另一种常见方法。
该方法侧重于测试输入的边界情况,因为往往软件在边界值处容易出现问题。
通过测试边界值附近的数据,可以覆盖常见的错误和异常情况。
比如,对于一个要求输入1到100之间整数的软件功能,可以选择输入1和100作为边界值,测试软件在这两个值附近的行为。
因果图法因果图法是一种用于描述系统或软件功能关系的图形化方法。
在黑盒测试中,可以利用因果图来帮助设计测试用例。
通过因果图,可以清晰地了解不同功能之间的依赖关系,从而设计出全面的测试用例。
因果图可以是结构图、时序图,也可以是数据流图等形式。
决策表法决策表法是一种基于条件和动作的逻辑关系建模技术。
在黑盒测试中,可以利用决策表来设计测试用例,覆盖不同的条件组合。
通过设计决策表,可以确保测试用例全面而有效地覆盖了各种场景。
决策表涉及条件、动作和动作条件三个要素,形成了一种清晰的逻辑关系。
总结在黑盒测试中,合理的用例设计是保证测试质量的关键。
等价类划分法、边界值分析法、因果图法、决策表法等多种用例设计方法都可以帮助测试人员设计全面且高效的测试用例,从而有效地验证软件功能是否符合预期。
在实际测试过程中,测试人员可根据具体情况选择不同的测试用例方法,灵活运用以提高测试效率与覆盖范围。
软件测试——⿊盒测试⽅法1、测试⽤例的定义:是为了特定的⽬的⽽设计的⼀组有测试输⼊、执⾏条件、预期结果的案例(⽂档)2、测试⽤例的构成要素:例如qq邮箱⽤例测试:3、⿊盒测试⿊盒测试⽤例设计⽅法:等价类、边界值、判定表、因果图、正交实验、状态迁移法、场景法、错误推测(1)等价类在所有的测试数据中,具有某种共同特征的数据⼦集,⼀般按照有效等价类和⽆效等价类等价类划分规则:等价类测试⽅法的分析步骤:等价类测试⽤例案例:例⼦:固定电话号测试地区码(3/4位)+电话号码(7/8位)(2)边界值选取正好等于、刚刚好⼤于或刚刚好⼩于边界值作于测试数据注意:⼤量的错误是发⽣在输⼊或输出范围的边界上,⽽不是在输⼊范围的内部边界值的选取:边界值法测试⽤例步骤:边界值法测试⽤例案例:例⼦:固定电话号测试地区码(3/4位)+电话号码(7/8位)(3)判定表法使⽤等价类⽅法时对于输⼊域与输⼊域存在关联时⽆法覆盖例如:两个输⼊不能组合:改⽤判定表法:条件桩:所有的输⼊的组合条件项:不同输⼊条件的组合动作桩:所有的输出的组合动作项:不同输⼊条件的组合的结果规则:⼀组条件与所得结果的组合,⼀个规则就是⼀个测试⽤例判定表法设计⽤例的步骤:案例:(4)因果图法判定表法适合⽤于条件少的时候,因为规则与条件是指数的关系,若条件过多,规则就会随之增多,会增加我们的⼯作量因果图引⼊:因果图中条件与条件,条件与结果的之间的依赖关系:案例:(5)状态迁移法状态迁移图案例:(7)场景法场景法介绍与步骤:基本流、备选流、异常流图解分析:案例:(8)正交实验法因⼦:就是条件(输⼊项)⽔平:就是取值(输⼊项的求值)案例:(9)错误推测法4、⿊盒测试⽅法总结:。
黑盒测试方法在软件开发领域,黑盒测试是一种测试方法,旨在检验软件应用程序的功能性。
与白盒测试不同,黑盒测试不需要了解内部代码结构或设计原理,而是侧重于检查软件系统的外部行为。
本文将介绍黑盒测试的方法和步骤。
步骤一:理解需求在进行黑盒测试之前,首先需要全面理解软件系统的需求和功能。
测试人员应该仔细阅读需求文档,了解软件的预期功能和用户需求。
这有助于确定测试的范围和重点,从而更好地制定测试计划。
步骤二:制定测试计划根据需求文档和功能规格,测试人员应该制定详细的测试计划。
测试计划应包括测试范围、测试目标、测试方法、测试环境等内容。
同时,还应该确定测试用例的编写方式和执行策略,确保全面而有效地覆盖软件系统的功能。
步骤三:设计测试用例设计测试用例是黑盒测试的关键步骤之一。
测试用例应该覆盖所有预期的功能和业务场景,并且应该具有高效性和可重复性。
测试用例设计应该遵循等价分区、边界值分析、状态转换等测试设计原则,以确保测试的全面性和有效性。
步骤四:执行测试用例在执行测试用例时,测试人员应该按照预定的测试计划进行操作,记录测试结果并及时反馈。
测试人员需要关注软件系统的各项功能点,发现潜在的缺陷和问题,并及时报告给开发人员进行修复。
步骤五:分析测试结果测试执行完成后,测试团队需要对测试结果进行分析和总结。
对于发现的缺陷和问题,需要进行分类和优先级标记,并及时沟通给开发团队。
同时,还应该对测试过程中的问题和难点进行总结,以便在下一轮测试中提高效率和质量。
步骤六:编写测试报告最后,测试团队应该编写测试报告,总结本轮测试的结果和经验教训。
测试报告应该清晰明了,包括测试目的、测试范围、测试方法、测试结果、问题汇总等内容。
通过测试报告,测试团队和开发团队可以有效沟通,共同改进软件系统的质量和稳定性。
通过以上的步骤,黑盒测试可以帮助测试团队全面、有效地检验软件系统的功能性,发现潜在的缺陷和问题,并确保软件系统的质量和稳定性。
黑盒测试是软件开发过程中不可或缺的重要环节,也是保障软件质量的重要手段。
⿊盒测试及⽅法1:定义: 在测试时,把程序看作⼀个不能打开的⿊盒⼦,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序进⾏测试,它只检查程序功能是否按照需求规格说明书的规定正常使⽤,程序是否能适当地接收输⼊数据⽽产⽣正确的输出信息,并且保持外部信息(如数据库或⽂件)的完整性,如图所⽰:2:⿊盒测试⽅法⿊盒测试设计⽤例的⽅法: 等价类,边界值(在⼯作中⽤的多) 场景法,状态迁移法(对整个流程书写⽤例) 判定表,因果图,正交表(复杂的组合情况编写⽤例) 经验:错误推测法,异常分析法,随机测试a)等价类划分:1:有效等价类 是有意义的、合理的输⼊数据构成的集合。
可检查程序是否实现了规格说明中所规定的功能和性能。
2:⽆效等价类 与有效等价类的定义恰巧相反注意要素:1、⽤最少的⽤例覆盖最多的有效等价类2、每⼀个⽆效等价类都是⼀个⽤例根据等价类创建测试⽤例的步骤:第⼀步:建⽴等价类表例:以年龄输⼊框为例输⼊条件有效等价类有效等价类取值⽆效等价类⽆效等价类取值20~99整数20<=年龄<=9988⼩于20 的正整数⼤于99的正整数⼩数负数中⽂字符英⽂字符特殊字符空格空(不输⼊任何字符)161001.2 ,88.9-9呵呵cxq@#¥%第⼆步:输出测试⽤例b)边界值: 边界值分析法就是对输⼊或输出的边界值进⾏测试的⼀种⿊盒测试⽅法。
通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试⽤例来⾃等价类的边界。
设计⽅法: 确定边界情况(输⼊或输出等价类的边界)选取正好等于、刚刚⼤于或刚刚⼩于边界值作为测试数据。
我们输⼊(输出)条件规定了值的个数,则⽤最⼤个数,最⼩个数,⽐最⼩个数少⼀,⽐最⼤个数多⼀的数作为测试数据例:以年龄输⼊框为例输⼊ 20~99整数输⼊条件涉及边界值的地⽅边界值分析取值20~99整数边界为20 和 99 19 ,20 ,21,98,99,100c)判定表:创建判定表的步骤:1)确定规则的个数:若有N个条件,每⼀个条件下有2个值,则有2^n种规则。