五.黑盒测试和测试用例设计方法
1.测试用例综述
测试用例(Test Case)是指对一项特定的软件产品进行测试任务的描述,即测试方案,体现测试方案、方法、技术和策略。其内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,最终形成文档。简单地认为,测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,用于核实是否满足某个特定软件需求。
测试用例(Test Case)是将软件测试的行为活动做一个科学化的组织归纳,目的是能够将软件测试的行为转化成可管理的模式;同时测试用例也是将测试具体量化的方法之一,不同类别的软件,测试用例是不同的
1.1 为什么需要测试用例:
1.2 测试用例的因素:
1.3 测试用例组成元素:
1.4 测试用例的范例:
登录功能测试用例:用户名为 user 密码为987654

1.5测试用例的分类
1.接口测试用例
2.路径测试用例
3.功能测试用例
4.容错能力测试用例
5.性能测试用例
6.界面测试用例
7.安全性测试用例
8.压力测试用例
9.可靠性测试用例
10.安装/反安装测试用例
1.5.1 功能测试用例设计步骤


2.黑盒测试
2.1
黑盒测试又被称为数据驱动测试,完全不考虑程序内部结构和内部特性,注重于测试软件的功能需求。由于黑盒测试不需要了解程序内部结构,所以许多高层测试,如确认测试、系统测试、验收测试都采用黑盒测试
2.1.1 黑盒测试能发现以下几类错误;
1.功能不对或功能遗漏
2.界面错误
3.数据结构或数据库访问错误
4.性能问题
5.初始化和终止错误
2.1.2 黑盒测试的优点:
1.有针对性的找问题,并且定位问题更准确
2.黑盒测试可以证明产品是否达到用户要求的功能,是否符合用户的工作要求
3.能重复执行相同的操作,测试中最枯燥的部分可由自动化来完成
2.1.3 黑盒测试的缺点:
1.需要充分了解产品用到的技术,测试人员需要具有较多的经验
2.在测试过程中很多都是手工操作
3.测试人员需要大量的文档
2.2 等价类设计方法
等价类:是指某个输入域的子集合
等价类划分为:
1.有效等价类:指符合(需求规格说明书),输入合理的数据集合
2.无效等价类:指符合(需求规格说明书),输入合理的数据集合
等价类测试:如求1-100之间任意两个整数的和
分为一个有效等价类,和两个无效等价类,进行编号并选取代表值进行测试
(<1) (1-100) (>100)
以上的等价类并不完善,还有小数,字母,特殊字符,空格,空白等
等价类划分的步骤;
1.先考虑输入数据的数据类型(合法的和非法的)
2.再考虑数据范围(合法类型中的合法区间和非法区间)
3.画出示意图,区分等价类
4.为每一个等价类编号
5.在一组等价类中选择一对值来进行测试
2.3 边界值设计方法
程序的很多错误发生在输入或输出范围的边界上,因此针对各种边界情况设置测试用例,可以发现不少程序缺陷。
设计方法:
1.确定边界情况(输入或输出等价类的边界)
2.选取正好等于、刚刚大于或刚刚小于边界值作为测试数据
边界值与等价划分的区别:
1.边界值分析不是从某等价类中随便挑选一个作为代表,而是这个等价类的每个边界都要作为测试条件
2. 边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况
常见的边界值:
1.文本文框接收字符个数,比如用户名长度,密码长度等
2.报表的第一行和最后一行
3.数组元素的第一个和最后一个
4.循环的第一次、第二次和倒数第二次、最后一次
2.4错误推测方法
基本思想:利用直觉和经验猜测出出错的可能类型,列举出程度中所有可能的错误和容易发生错误的情况,基本思想是列举出可能犯的错误或错误易发生的清单,然后根据清单编写测试用例
这种方法很大程度上是凭经验进行的
2.5 因果图设计方法
因果图法比较适合输入条件比较多的情况,测试所有的输入条件的排列组合。所谓的原因就是输入,所谓的结果就是输出
利用因果图导出测试用例需要经过几个步骤:
1.分析程度规格说明的描述中,哪些是原因,哪些是结果原因,常常是输入条件或输入条件的等价类,而结果是输出条件
2.分析程度规格说明的描述中语义内容,并将其表示成连接各个原因与各个结果的“因果图”
3.标明约束条件。由于语法或环境的限制,有些原因和结果的组合情况是不可能出现的。
4.把因果图转换成判定表
5.为判定表中的每一列表示的情况设计测试用例
基本图形符号:
1.恒等:若原因出现,则结果出现;原因不出现,则结果不出现
2.非(~)
3.或(V)
4.与(^):若几个原因都出现,结果才出现;若其中有一个原因不出现,则结果不出现
约束符号:
1.E(互斥)
2.I(包含)
3.O(唯一)
4.R(要求)
5..M(屏蔽)
例:有一个处理单价为2.5元的盒装饮料的自动售货机软件。若投入2.5元硬币,按“可乐”、“啤酒”、“奶茶”按钮,相应的饮料就送出来。若投入的是3元硬币,在送出饮料的同时退还5角硬币
原因(输入):
1 投入2.5元硬币
2. 投入3元
3.按“可乐”按钮
4.按“啤酒”按钮
5.按“奶茶”按钮
中间状态:
1.已投币
2.已按钮
结果(输出):
1.退还5角硬币
2.送出“可乐”饮料
3.送出“啤酒”饮料
4.送出“奶茶”饮料
将因果图转换成判定表:

根据判定表设计测试用例
因果图缺点:
1.有些问题无法用因果描述
2.太过复杂,太过庞大
2.6 正交试验设计方法(GUI)
正交试验设计,是一种成对测试交互的系统的设计方法。它提供了一种能对所有变量对的组合进行典型覆盖的方法。可以从大量的试验点中挑出适量的、有代表性的点,利用“正交表”,合理的安排试验的一种科学的试验设计方法
正交表的构成:
1.行数:正交表中的行的个数,即试验的次数,也是我们通过正交实验法设计的测试用例的个数
2.因素数:正交表中列的个数,即要测试的功能点
3.水平数:任何单个因素能够取得的值的最大个数,即要测试功能点的取值个数
4.正交表的形式:L行数(水平数因素数)如 L8(27)
用正交设计测试用例的步骤:
1.有哪些因素(功能点)
2.每个因素有哪几个水平(功能点的取值)
3.选择一个合适的正交表
4.把变量的值映射到表中
5.把每一行的各因素水平的组合作为一个测试用例
6.加上你认为可以且没有在表中出现的组合
2.7 流程图法
我们在编程是,一般都需要画程序的算法流程图,可以将这一思想应用到黑盒测试领域。算法流程图是针对程序内容结构的,而黑盒测试的流程图是针对整个业务功能流程的
2.8 总结
测试用例的设计方法不是单独纯在的,具体到每个测试项目里都会用到多种方法,每种类型的软件有各自的特定,每种测试用例设计的方法也有各自的特点,针对不同软件如何利用这些黑盒方法是非常重要的,
在设计测试中,往往是综合使用各自方法才能有效的提高测试效率和覆盖率。



浙公网安备 33010602011771号