黑盒测试用例测试方法

匿名 (未验证) 提交于 2019-12-03 00:21:02

黑盒测试用例设计方法
一、等价类划分法
等价类划分法是一种典型的、重要的黑盒测试方法,是指某个输入域的子集合。在该子集合中,所有的输入数据对于揭露软件中的错误都是等效的。
等价类划分有效等价类和无效等价类
例如:微信红包的例子【0.01-200】
按数据范围划分:
有效的:0.01-200(1) 无效的:小于0.01(2
大于200(3
0.01-200区间小数点后超过2位的值 (4

按数据类型组成划分:
有效:数字 (5) 无效:非数字类型,英文,中文,特殊字符,html标签...(6

按是否为空
有效:不为空(7) 无效:为空(8
等价类划分法用例设计原则
1)划分有效及无效等价类,为每一个等价类规定一个唯一的编号
2)设计一个新的测试用例数据,使其尽可能多地覆盖尚未覆盖的有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止
3)设计一个新的测试用例数据,使其仅覆盖一个尚未覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止

二、边界值分析法
边界值最有可能出错
1、定义:边界值分析法是对等价类划分法的补充,边界值一般都是从等价类的边缘去寻找。边界值分析的基本思路:正好等于、刚刚大于、刚刚小于边界值作为测试数据。0.01、200
注意:0是一个特殊值,我们在考虑边界值的时候同时也要考虑这个特殊值。负数
2、边界值的作用:人们从长期的测试工作经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误!
3、举例子:
eg:比如我们生活中大家所熟悉的微信红包:最小金额0.01,最大金额200元
边界值:0,0.01,0.02,199.99,200,200.01
特殊值:负数
eg:一个输入文件应包括2-255条记录
特殊值:1,2,3,254,255,256 2-255(有效区间、无效区间)
特殊值:0
等价类划分法和边界值分析法常见运用场景
1)输入规定的取值范围或值的个数的情况(类似min<x<max、min<x、max>x);
比如用户名长度、红包金额数值输入范围
2)在输入条件是true和false两种状态的情况:比如勾选、开关设置
单选按钮:选择、默认选择、切换选项
多选按钮:单选、全选、全不选
3)在拉列表包含多个选项的情况:比如城市下拉选项
4)在规定了输入数据必须遵守的规则情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度匹配规则);比如要求用户实名认证、非黑名单、账户资金1000元以上

以上除了等价类之外同时会涉及边界值的分析。边界值还包括以下:
1)报表的第一行、最后一行、中间一行
2)屏幕上光标在最左上、最右下位置

上课练习
注册163邮箱

*邮件地址 输入框 @163.com
6~18个字符,可使用字母、数字、下划线、需以字母开头

第一步 分类

设计输入数据

三、场景法
1)什么是场景法
通过场景描述的业务流程(业务逻辑),也包括代码实现逻辑,设计用例来遍历场景(路径),验证软件系统功能的正确性。
2)如何使用场景法
2.1 画出流程图
矩形:表示步骤(操作、结果)
菱形:判断---是、否
注意:场景法的重点是测试流程,因此每个流程一个用例验证即可,流程测试没有问题并不能说明系统功能没有问题了,还需要针对单步的功能进行测试
只有单个功能点和流程测试,才算是充分的测试

ATM取款经常遇到的场景:(一共9种)
1、成功取款(插入银行卡)
2、借记卡不合法
3、取消输入密码
4、密码错误(还有输入的机会)
5、密码错误超过3次(被吞卡)【1,3】 0,1,2,3,4
6、金额不合法(0、负数、非数值类型输入*#)
7、账户余额不足
8、ATM内现金不足
...
工具:在线画流程图工具
思路:
1、正常路径
2、再去根据每一个判断,找 另一个出口的路径
3、确定出错之后还能否正常,再多走一个步骤


四、错误推测法(反推法)
基于经验和直觉推测程序中所有可能存在的各种错误,从而针对性的设计测试用例的方法。它的要素共有三点,分别为:经验、知识、直觉
(二八原则)

如何使用?
1、列举出程序中所有可能有的错误和容易发生错误的特殊情况;
2、根据他们选择测试用例
有可能已经想到的测试点,利用等价类和边界值已经覆盖到了

登录
等价类划分和边界值分析
1、正确用户名、正确密码、点击登录按钮 ----登录成功
2、错误密码
3、用户名不存在(不存在)
4、用户名错误
5、空用户名、空密码、包含空格情况
错误推断,无法通过上述方法覆盖到
6、多次输入错误密码,是否安全提示
7、修改密码后输入原密码是否支持登录
8、单点登录、多点登录、异地登录
9、网络情况测试

单点登录:一个账号只能在一个地方登录
多点登录:多个人可以登录同一账号、多个平台可以登录同一个账号;会出现重复提交

案例详解:
某平台登录页面
既然是用错误推测法,那么我们首先列出所有可能导致结果出错的情况,如下:

1、用户名跟密码的对应关系校验
2、账号或密码为空
3、用户名和密码,如果太短或者太长,应该怎么处理(安全性,密码太短时是否有提示)
满足格式要求但不是正确的
4、用户名和密码中有特殊字符(比如空格),和其他非英文的情况(是否做了校验)
5、用户名和密码前后有空格的处理(过滤)
6、错误登录的次数限制
7、提交登录时,网络异常
8、多次点击提交操作,只能执行一次
...

后台服务器与系统已存在的用户信息做匹配校验!

登录密码【6-16,字母数字常用字符组合】(格式是否满足+满足格式是否与已存在信息一致)
lanxin12345 正确密码 lanxin1234

正交法和因果图分析法(这两种方法暂时不讲,很少用到,金融类可能后比较多,有了一定的经验后)

五、测试用例方法的选择
使用各种测试方法的综合策略

1)首先,进行等价类划分,主要是输入条件的划分,这是提高测试效率的最有效的方法,在任何情况下都必须使用边界值分析法,这种方法设计出的测试用例发现程序错误的能力最强。
切记不要穷举测试

2)用错误推测法追加测试用例,这需要测试工程师的经验总结

3)对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度,如果没有达到覆盖标准,应当再补充足够的
测试用例(场景法)

具体如何设计,可以结合项目要求或自己的标准来做,灵活运用

笔试面试题整理
1、编写测试用例会用到什么方法
接着问,你觉得你在写用例的时候用到了吗?(结合项目来答)
2、给出一个登录/购物车/支付页面,直接让你设计尽可能多的用例

作业

输入边A、B、C三个值,判断是否构成三角形,如果是等腰三角形(直角、等边)就输出等腰(直角、等边)三角形

分析思路:
首先要考虑a、b、c是否为正数:a>0,b>0,c>0
三角形判断依据:三角形任意两边之和大于第三边 a<b+c;b<a+c;c<a+b
直角三角形判断依据:勾股定理:a的平方+b的平方=c的平方
等腰三角形判断依据:两边相等 a=b不等于c,a=c不等于b,b=c不等于a
等边三角形判断依据:三边相等:a=b=c

1、场景法:画出流程图,并整理测试点(等价类边界值进行用例补充)
2、等价类划分法,整理出测试点
二选一来完成





注意:没有办法证明测试点是否覆盖全面,要理解知识点,不要去背,理解了才是你的
按照方法去整理出来的测试点

下节课预习
软件测试知识分析






易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!