第2章 黑盒测试场景法
实验七-黑盒测试之场景法测试实验(参考答案)
实验七-黑盒测试之场景法测试实验(参考答案)实验七黑盒测试之场景法测试实验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)场景中的每一个场景都需要确定测试用例,一般采用矩阵来确定和管理测试用例。
如下表所示是一种通用格式,其中行代表各个测试用例,列代表测试用例的信息。
黑盒测试方法-正交试验法和场景法
B 2 1 2 3 1 2 3 1 2 3
C 3 1 2 3 2 3 1 3 1 2
4 1 2 3 3 1 2 2 3 1
实验 号
1 2 3 4 5 6 7 8 9
水平组 合
A1B1C1 A1B2C2 A1B3C3 A2B1C2 A2B2C3 A2B3C1 A3B1C3 A3B2C1 A3B3C2
实验条件
A:80℃ ~90℃ B:90分钟~150分钟 C:5%~7%
试验的目的是搞清楚因子A、B、C对转化 率有什么影响,哪些是主要的,哪些是次 要的,从而确定最适生产条件,即温度、 时间及用碱量各为多少才能使转化率最高。
在试验范围内都选了三个水平(即各因素的 不同状态),如下所示: • A:A1=80℃ ,A2=85℃ ,A3=90℃; • B:B1=90分钟,B2= 120分钟,B3= 150分钟; • C:C1=5%,C2=6%,C3=7%。
1、基本流和备选流
• 图中经过用例的每条路径 都用基本流和备选流来表 示. • 直黑线表示基本流,是经过 用例的最简单的路径. • 备选流用不同的彩色表示, 一个备选流可能从基本流 开始,在某个特定条件下执 行,然后重新加入基本流中 (如1和3);也可能起源于另 一个备选流(如2),或者终止 用例而不再重新加入到某 个流(如2和4).
6
1 2 2 1 1 2 2 1
7
1 2 2 1 2 1 1 2
L8(2441)
0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 1 0 1 0 0 1 0 2 1 3 3 1 2 0
L18(3661)
L12(211)
列号 试验号 1 2 1 1 1 2 1 1 3 1 1 4 1 1 5 1 1 6 1 2 7 1 2 8 1 2 9 1 2 10 1 2 11 1 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:在搜索过程中断网重连,验证系统是否能正确处理这种情况。
黑盒测试方法—场景法
ATM机取款测试用例
一、ATM机没有正常运行
二、卡出现了问题
三、密码出现问题
四、输入金额有误
基本流
确认ATM机正常运行->插入银行卡->输入密码->验证密码->取款->输入取款数额->取钱->显示余额->打印凭条->退卡
基本流
备选流10
场景12-达到每日最大提款金额
基本流
备选流
测试用例信息表
测试用例ID
场景/条件
账号
密码
取款金额
预期 结果
01
场景1-成功取款
有效
有效
有效
取款 成功
02
场景2- ATM机没有正常运行
不适用
不适用Biblioteka 不适用取款 失败03
场景3-插错卡
不适用
不适用
不适用
取款 失败
04
场景4-卡消磁
不适用
不适用
下面是场景法的基本设计步骤
1. 根据说明,描述出程序的基本流及各项备选流
2. 根据基本流和各项备选流生成不同的场景
3. 对每一个场景生成相应的测试用例
4. 对生成的所有测试用例重新复审,去掉多余的测试用例,测试用例确定后,对每一个测试用例确定测试数据值
说了一些场景法的基本概念和设计方法。想必大家已经有了一些了解了。再举一个简单例子来讲解下。这里,我就不用网上很流行的ATM的例子了。我结合以前项目中遇到的情况。设计一个简单的例子来讲解下。
黑盒测试技术5-场景法
基本流 备选流5 备选流7 备选流8
……
密码不正确
备选流2
登录失败
选购
支付 基本流
购买成功
备选流3 货物缺货
备选流4
账户余额不足 支付失败
2. 描述出基本流和备选流
• 程序的基本流和备选流如下:
基本流 备选流1 备选流2 备选流3 备选流4
登录购物网站,选择物品,登录账号,付钱交易,生成订购单 账号不存在 账号或密码错误 货物缺货 用户账号余额不足
场景法设计用例步骤
流程图
1. 画出功能模块的流程示意图
事件流
2. 描述出基本流和备选流
场景
3. 构造用例场景列表
矩阵
4.设计测试用例矩阵
数据
5.确定测试数据
场景法的测试思想
根据需求规格说明书中的用例包含的时间 流信息构造场景并设计相应的测试用例, 使每个场景至少发生一次。
场景法的测试思想
基本上每个软件都会用到这种方法。Why? 因为每个软件后面都有业务的支撑: 网上购物流程、ATM机取款流程……
3. 确定用例场景
• 根据基本流和各项备选流确定不同的场景。 • 场景如下:
场景1—成功购物 场景2—账号不存在 场景3—账号或密码错误 场景4—货物缺货 场基本流 基本流
备选流1 备选流2 备选流3 备选流4
每一个场景都需要确定测试用例!
4. 生成测试用例
基本流 备选流3 备选流5 基本流 备选流6
场景8—ATM现金不足
基本流 备选流7
场景9—密码错误(3次以内),但ATM现金不足 基本流 备选流3 备选流7
场景10—ATM现金不足 场景11—超过提款额度
基本流 备选流3 备选流5 备选流7 基本流 备选流8
黑盒测试--场景法
⿊盒测试--场景法现在的软件⼏乎都是⽤事件触发来控制流程的,事件触发时的情景形成了场景何为场景?--场景可以理解为由"那些⼈、什么时间、什么地点、做什么以及如何做"等要素组成的⼀系列相关活动,且场景中的活动还能由⼀系列场景组成场景法组成:场景组合:按上图组合多个不同的场景:场景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. 按区间划分: 在输⼊条件规定了取值范围或值的个数的情况下,则可以确⽴⼀个有效等价类和两个⽆效等价类。
软件测试2_黑盒测试 (下)
请建立判定表。
举例:维修机器问题(续) (1)列出所有的条件桩和动作桩
• 条件桩 • C1:功率大于50马力吗? • C2:维修记录不全吗? • C3:运行超过10年吗? • 动作桩 • A1:进行优先处理 • A2:作其他处理
举例:维修机器问题(续)
(2)确定规则个数
• 输入条件个数:3; • 每个条件的取值:“是”或“否”; • 规则个数:2*2*2 =8;
第三次尝试(关注日期和月份)
M1={月份:每月有30天} M2={月份:每月有31天,12月除外} M3={月份:此月是12月} M4={月份:此月是2月} D1={日期:1≤日期≤ 27} D2={日期:日期=28} D3={日期:日期=29} D4={日期:日期=30} D5={日期:日期=31} Y1={年:年是闰年} Y2={年:年不是闰年}
软件测试
黑盒测试(下)
1
主要内容
判定表法 因果图法 其它方法
2
黑盒测试
判定表法
3
判定表法
判定表
判定表的原理 2. 判定表的组成
1.
① ②
规则 规则合并
3.
判定表建立的步骤
基于判定表的测试
案例:三角形问题,NextDate问题
1.判定表的原理
判定表
判定表(Decision
Table),又叫决策表 判定表是分析和表达多逻辑条件下执行不同操作 的工具。
举例:维修机器问题(续)
(5)化简;
(1) 功率大于50马力吗? Y Y — (2) Y N Y (3) Y N N (4) N — Y (5) N — N
条 维修记录不全吗? 件
动 作 作其他处理
进行优先处理
黑盒测试
输入条件
有效等价类编 号
有效等价类
无效等价类编 号
无效等价类
是否三角形的 三条边
(1) (2) (3) (4) (5) (6)
(A>0), (B>0), (C>0), (A+B>C) (B+C>A) (A+C>B)
(7) (8) (9) (10) (11) (12)
(A≤0), (B≤0), (C≤0), (A+B≤C) (B+C≤A) (A+C≤B)
边界值设计原则 对边界值设计测试用例,应遵循以下几条原则: 1、如果输入或输出条件规定了值的范围,则应取刚达到这个 范围的边界的值,以及刚刚超越这个范围边界的值作为测试输 入数据。 2、如果输入或输出条件规定了值的个数,则用最大个数、最 小个数、比最小个数少一、比最大个数多一的数作为测试数据。 例如有规定“某文件可包括1至255个记录…”,则测试数据可 选1和255及0和256等值。
案例一
“一个程序读入3个整数,把这三个数值看作一个三角形 的3条边的长度值。这个程序要打印出信息,说明这个 三角形是不等边的、是等腰的、还是等边的。” 解:三角形判断的分析 我们可以设三角形的3条边分别为A,B,C。如果它们 能够构成三角形的3条边,必须满足: A>0,B>0,C>0,且A+B>C,B+C>A,A+C>B。 如果是等腰的,还要判断A=B,或B=C,或A=C。 如果是等边的,则需判断是否A=B,且B=C,且A=C。
1980121
7个数字字符 有1个非数字 字符 全是非数字字 符 6个数字字符 19811m AUGUST 198108
黑盒测试的用例方法是什么
黑盒测试的用例方法是什么在软件测试中,黑盒测试是一种针对软件功能进行测试的方法,测试人员不需要了解软件内部的实现细节,而是基于功能规格来设计测试用例。
黑盒测试的目的是验证软件功能是否按照用户需求正确运行。
为了有效地进行黑盒测试,测试人员需要采用一定的用例方法来设计测试案例,以覆盖各种可能的情况。
等价类划分法等价类划分法是黑盒测试中常用的用例设计方法之一。
该方法将输入数据划分为若干等价类,然后从每个等价类中选择一个典型值作为测试数据。
通过对典型值的测试,可以有效地发现输入数据的各种情况下软件的行为。
例如,对于一个要求输入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、⿊盒测试⽅法总结:。
黑盒测试 方法
黑盒测试方法在软件开发领域,黑盒测试是一种测试方法,旨在检验软件应用程序的功能性。
与白盒测试不同,黑盒测试不需要了解内部代码结构或设计原理,而是侧重于检查软件系统的外部行为。
本文将介绍黑盒测试的方法和步骤。
步骤一:理解需求在进行黑盒测试之前,首先需要全面理解软件系统的需求和功能。
测试人员应该仔细阅读需求文档,了解软件的预期功能和用户需求。
这有助于确定测试的范围和重点,从而更好地制定测试计划。
步骤二:制定测试计划根据需求文档和功能规格,测试人员应该制定详细的测试计划。
测试计划应包括测试范围、测试目标、测试方法、测试环境等内容。
同时,还应该确定测试用例的编写方式和执行策略,确保全面而有效地覆盖软件系统的功能。
步骤三:设计测试用例设计测试用例是黑盒测试的关键步骤之一。
测试用例应该覆盖所有预期的功能和业务场景,并且应该具有高效性和可重复性。
测试用例设计应该遵循等价分区、边界值分析、状态转换等测试设计原则,以确保测试的全面性和有效性。
步骤四:执行测试用例在执行测试用例时,测试人员应该按照预定的测试计划进行操作,记录测试结果并及时反馈。
测试人员需要关注软件系统的各项功能点,发现潜在的缺陷和问题,并及时报告给开发人员进行修复。
步骤五:分析测试结果测试执行完成后,测试团队需要对测试结果进行分析和总结。
对于发现的缺陷和问题,需要进行分类和优先级标记,并及时沟通给开发团队。
同时,还应该对测试过程中的问题和难点进行总结,以便在下一轮测试中提高效率和质量。
步骤六:编写测试报告最后,测试团队应该编写测试报告,总结本轮测试的结果和经验教训。
测试报告应该清晰明了,包括测试目的、测试范围、测试方法、测试结果、问题汇总等内容。
通过测试报告,测试团队和开发团队可以有效沟通,共同改进软件系统的质量和稳定性。
通过以上的步骤,黑盒测试可以帮助测试团队全面、有效地检验软件系统的功能性,发现潜在的缺陷和问题,并确保软件系统的质量和稳定性。
黑盒测试是软件开发过程中不可或缺的重要环节,也是保障软件质量的重要手段。
黑盒测试方法正交试验法和场景法课件
数据整理
对测试过程中的数据进行整理和分析,为报 告提供数据支持。
报告审阅与修改
对报告进行审阅和修改,确保报告的准确性 和完整性。
06
实际应用案例
正交试验法应用案例
案例一
某电商网站性能测试
案例二
某银行信用卡业务功能测试
案例三
某在线教育平台功能测试
场景法应用案例
案例一
某智能家居控制系统功能测试
案例二
对系统的性能进行评估,包括 响应时间、吞吐量等指标。
覆盖率分析
分析测试用例的覆盖率,确定 是否需要补充新的测试用例。
风险评估
评估系统存在的风险,提出相 应的风险控制措施。
测试报告编写
报告内容
包括测试概述、测试环境、测试方法和过程 、测试结果和结论等。
图表制作
根据需要,制作相应的图表以直观地展示测 试结果。
场景法的实施步骤
2. 场景设计
根据需求分析结果,设计具体的 场景,包括正常场景、边界场景 和异常场景。
3. 测试用例编写
基于场景设计,编写相应的测试 用例,包括输入、预期输出和执 行条件。
4. 测试执行
按照测试用例执行测试,记录测 试结果。
1. 需求分析
5. 缺陷跟踪与修复
明确软件的功能需求和用户角色 ,识别关键场景。
04
黑盒测试用例设计
需求分析
需求调研
通过与项目相关人员进行 交流,了解项目需求和业 务逻辑。
需求文档解读
仔细阅读需求文档,明确 测试对象和测试范围。
需求澄清
对于不明确或含糊的需求 ,及时与项目相关人员进 行沟通,确保测试用例设 计的正确性。
测试用例设计原则
完整性
黑盒测试及方法
⿊盒测试及⽅法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种规则。
黑盒测试用例设计方法
4.
表示
《软件测试》
3-12
等价类划分法测试案例
在某网站申请免费信箱时,要求用户必须输入用户名、密 码及确认密码,对每一项输入条件的要求如下: 用户名要求为4位以上,16位以下,使用英文字母、数字、
“-”、“_”,并且首字符必须为字母或数字;密码要求为
6~16位之间,只能使用英文字母、数字以及“-”、“_”, 并且区分大小写。
无效等价类
•
对规格说明(Spec)而言,无意义、不合理的输入、输出数据组成的
所有集合
•
根据规格说明(Spec)检查是否所有无效等价类都被很好处理,没有 不合理的行为
《软件测试》
3-8
如何划分等价类
1)
根据规格说明(Spec)的定义,对输入和输出
条件进行分析,划分等价类
2)
根据计算机基础知识,对输入和输出条件进行分
编号
(7) (8) (9) (10) (11) (12) (16)
是否三角形的3条 边
c>0 a+b>c b+c>a a+c>b
等腰三角形?
a=b b=c
(13) a≠b && (14) b ≠c &&
c=a
(15) c ≠a
(17) a≠b b≠c (18) (19)
密码 abc_123 123-abc 12345678 12345678 12345678 12345678 12345 abcdefghijk123456 abc&123 abc_123
确认密码 abc_123 123-abc 12345678 12345678 12345678 12345678 12345 abcdefghijk123456 abc&123 Abc_123
第二章软件测试技术(黑盒)
两个无效等价类是“项数<1”或“项数>999”。在数轴上
表示成1:
999
x
无效等价类
有效等价类
无效等价类
沈阳师范大学软件学院
32
2.2.2 等价类分析法
测试用例的设计 为每个等价类规定一个唯一的编号; 设计一个新的测试用例,使之尽可能多地覆盖尚未被覆盖的
有效等价类,重复这一步直至所有的有效等价类都被覆盖为 止;
选择代表元素
2 1
3
4
输入域
互不相交的子集 ➢ 完备性 子集的并是整个集合 ➢ 无冗余
沈阳师范大学软件学院
27
2.2.2 等价类分析法
等价类定义
由于不可能用所有可以输入的数据来测试程序,而只能 从全部可供输入的数据中选择一个自己进行测试。如何选择 适当的子集,使其尽可能多地发现错误,解决的办法之一就 是等价类。
沈阳师范大学软件学院
38
习题二
某城市的电话号码由三部分组成。这三部分的名称和内容分 别是 地区码:空白或三位数字; 前 缀:非’0’或’1’开头的三位数; 后 缀:四位数字。
假定被调试的程序能接受一切符合上述规定的电话号码,拒 绝所有不符合规定的号码,试用等价分类法来设计它的调 试用例。
沈阳师范大学软件学院
沈阳师范大学软件学院
24
2.2.1 边界值分析法
健壮性测试:
健壮性测试是作为边界值分析的一个简单的扩充,它除了 对变量的5个边界值分析取值外,还需要增加一个略大于最 大值(max+)以及略小于最小值(min-)的取值,检查超过极限 值时系统的情况。 因此,对于有n个变量的函数采用健壮性测试需要6n+1个 测试用例。
输入
输出
第2章 黑盒测试场景法
3
验证黑名单
加油机验证卡账户是否存在于黑名单中,如果属于黑名单,加油机吞 卡
4 输入购油量 客户输入需要购买的汽油数量
5 加油
加油机完成加油操作,从加油卡中扣除相应金额
6 返回加油卡 退还加油卡
备选流:
序号
用例名称
B 加油卡无效
用例描述
在基本流A2过程中,该卡不能够识别或是非本机可以使用的IC 卡, 加油机退卡,并退出基本流
第2章 黑盒测试—5-场景法
内容提纲
复习 场景法的思想 场景法的步骤 举例
基本原理
现在的软件几乎都是用事件触发来控制流程 的,象GUI软件、游戏等。事件触发时的情 景并形成了场景,而同一事件不同的触发顺 序和处理结果就形成了事件流。这种在软件 设计方面的思想可以引入到软件测试中,可 以生动地 描绘出事件触发时的情景,有利于 设计测试用例,同时使测试用例更容易理解 和执行。
备选流1 备选流2 备选流3
确定测试用例
对于每一个场景都需要确定测试用例。可以 采用矩阵或决策表来确定和管理测试用例。
对于每个测试用例,存在一个测试用例ID、 条件(或说明)、测试用例中涉及的所有数 据元素(作为输入或已经存在于数据库中) 以及预期结果。
测试用例
ID 场景/条件
帐号
密码
选购书 籍
场景法设计测试用例的步骤
根据说明,描述出程序的基本流及各项备选 流.
根据基本流和各项备选流生成不同的场景. 对每一个场景生成相应的测试用例. 对生成的所有测试用例重新复审,去掉多余
的测试用例,测试用例确定后,对每一个测 试用例确定测试数据值.
例题:在线购物系统
在当当网网上书店都订购过书籍,整个订 购过程为:用户登录到网站后,进行书籍 的选择,当选好自己心仪的书籍后进行订 购,这时把所需图书放进购物车,等进行 结帐的时候,用户需要登录自己注册的帐 号,登录成功后,进行结帐并生成订单, 整个购物过程结束。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
确定基本流和备选流
用户到网站,书籍的选择,进行订购,把所需图 基本流 书放进购物车,等进行结帐的时候,登录自己的 帐号,登录成功后,生成订单
备选流1
帐号错误
备选流2
备选流3
密码错误
无选购书籍
确定场景
场景1-购物成功 基本流
场景2-帐号错误
场景3-密码错误
基本流
基本流
备选流1
备选流2 备选流3
场景4-无选购书籍 基本流
D
加油卡账面现金 不足
系统判断加油卡内现金不足,重新加入基本流A4,或选择退卡
E
加油机油量不足
系统判断加油机内油量不足,重新加入基本流A4,或选择退卡
在下面的矩阵中,V表示有效数据元素,I表示无效数据元素,n/a表示 不适用,例如C01表示“成功加油”基本流。请按上述规定为其它应用场 景设计用例矩阵。
选购书籍 《软件测试艺术 》 n/a
预期结果 成功购物 提示帐号错误, 返回基本流步骤 2 提示密码错误, 返回基本流步骤 3 提示选购书籍, 返回基本流步骤 5
3
123$%^ n/a
4
123456
空
例题:加油
使用加油卡在某加油站加油,用户出示加油 卡,插入机器中,及其读卡信息,校验是否 在卡片黑名单中。通过校验用户输入加油量, 系统校验加油量是否符合要求,加油完毕, 产生卡内金额余额,退出卡片。
第2章 黑盒测试—5-场景法
内容提纲
复习 场景法的思想 场景法的步骤 举例
基本原理
现在的软件几乎都是用事件触发来控制流程 的,象GUI软件、游戏等。事件触发时的情 景并形成了场景,而同一事件不同的触发顺 序和处理结果就形成了事件流。这种在软件 设计方面的思想可以引入到软件测试中,可 以生动地 描绘出事件触发时的情景,有利于 设计测试用例,同时使测试用例更容易理解 和执行。
基本概念
1.基本流 和 备选流 在测试一个软件的时候,在场景法中,测试 流程是软件功能按照正确的事件流实现的一 条正确流程,那么我们把这个称为该软件的 基本流; 出现故障或缺陷的过程,就用备选流加以标 注,这样,备选流就可以是从基本流来的, 或是由备选流中引出的。
分析
图中经过用例的每条路径都用基本流和备选 流来表示,直黑线表示基本流,是经过用例 的最简单的路径。备选流用不同的色彩表示, 一个备选流可能从基本流开始,在某个特定 条件下执行,然后重新加入基本流中(如备 选流1和3);也可能起源于另一个备选流 (如备选流2),或者终止用例而不再重新 加入到某个流(如备选流2和4)。
场景法设计测试用例的步骤
根据说明,描述出程序的基本流及各项备选 流. 根据基本流和各项备选流生成不同的场景. 对每一个场景生成相应的测试用例. 对生成的所有测试用例重新复审,去掉多余 的测试用例,测试用例确定后,对每一个测 试用例确定测试数据值.
例题:在线购物系统
在当当网网上书店都订购过书籍,整个订 购过程为:用户登录到网站后,进行书籍 的选择,当选好自己心仪的书籍后进行订 购,这时把所需图书放进购物车,等进行 结帐的时候,用户需要登录自己注册的帐 号,登录成功后,进行结帐并生成订单, 整个购物过程结束。
确定测试用例
对于每一个场景都需要确定测试用例。可以 采用矩阵或决策表来确定和管理测试用例。 对于每个测试用例,存在一个测试用例ID、 条件(或说明)、测试用例中涉及的所有数 据元素(作为输入或已经存在于数据库中) 以及预期结果。
测试用例
ID 场景/条件 1 2 3 4 帐号 密码 V V I V 选购书 籍 V n/a n/a I 预期结果 成功购物 提示帐号错误,返回基 本流步骤2
场景
场景 场景 场景 场景 场景 场景 场景 场景 1 2 3 4 5 6 7 8 基本流 基本流 基本流 基本流 基本流 基本流 基本流 基本流
备选流 备选流 备选流 备选流 备选流 备选流 备选流 1 1 3 3 3 4 3
备选流 2 备选流 1 备选流 1 备选流 2 备选流 4
场景1:购物 V 成功
场景2:帐号 I 错误
场景3:密码 V 错误
场景4:无选 V 购书籍
提示密码错误,返回基 本流步骤3
提示选购书籍,返回基 本流步骤5
ID 场景/条件 帐号 1 2 场景1:购 xu 物成功 场景3:帐 zhou 号错误 场景4:密 xu 码错误 场景5:无 xu 选购书籍
密码 123456 123456
测试用例 ID号 C01. C02. C03. C04. C05.
场景 场景1;成功加油
账号 V
是否 黑名单卡 I
输入油量 账面金额 V V
加油机 油量 V
预期结果
成功加油
题目要求
[问题1] (5分) 使用场景法设计测试案例,指出场景涉 及到的基本流和备选流,基本流用字母A表 示,备选流用题干中描述的相应字母表示。
ห้องสมุดไป่ตู้本流A;
序号 1 2 3
用例名称 准备加油 验证加油卡 客户将IC加油卡插入加油机
用例描述
加油机从加油卡的磁条中读取账户代码,并检查它是否属于可以接收 的加油卡 加油机验证卡账户是否存在于黑名单中,如果属于黑名单,加油机吞 卡
验证黑名单
4
5 6
输入购油量
加油 返回加油卡
客户输入需要购买的汽油数量
加油机完成加油操作,从加油卡中扣除相应金额 退还加油卡
备选流:
序号 用例名称 用例描述 在基本流A2过程中,该卡不能够识别或是非本机可以使用的IC 卡, 加油机退卡,并退出基本流 B
加油卡无效
C
卡账户属于黑名 单
在基本流A3过程中,判断该卡账产属于黑名单,例如:已经挂 失, 加油机吞卡退出基本流