51Testing软件测试论坛

标题: 黑盒测试 [打印本页]

作者: lsekfe    时间: 2016-8-8 15:01
标题: 黑盒测试
文章转自:博客园
测试用例的概念
验证值:查看测试用例值结果所要用到的值
结束命令:终止程序或返回到稳定状态所要用到的值
测试用例设计的要求
测试用例设计
黑盒测试技术
黑盒测试是将测试对象看做一个黑盒子,完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。
等价类划分
等价类划分是将输入域划分成尽可能少的若干子域,在划分中要求每个子域两两互不相交,每个子域称为一个等价类。
等价类类型
有效等价类是对规格说明有意义、合理的输入数据构成的集合,能够检验程序是否实现了规格说明中预先规定的功能和性能。
无效等价类是对规格说明无意义、不合理的输入数据构成的集合,以检查程序是否具有一定的容错性。
变量的等价类
取值范围:在输入条件规定了取值范围的情况下,可以确定一个有效等价类和两个无效等价类。
字符串:在规定了输入数据必须遵守的规则情况下,可确定一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。
举例:姓名是长度不超过20的非空字符串,且只由字母组成,数字和其他字符都是非法的。
1个有效等价类:满足了上述所有条件的字符串
3个无效等价类:
枚举:若规定输入数据是一组值(假定N个),并且程序要对每一个输入值分别处理,可确定N个有效等价类和一个无效等价类。
举例:某程序根据不同的学历分别计算岗位工资,其中学历可以是专科、本科、硕士、博士等四种类型。
4个有效等价类:专科、本科、硕士、博士
1个无效等价类:其他学历
数组:数组是一组具有相同类型的元素的集合,数组长度及其类型都可以作为等价类划分的依据。
举例:假设某程序的输入是一个整数数组 int oper[3]
1个有效等价类:所有合法值的数组,如 {-10,20}
2个无效等价类:
如果对数组元素有其他附加约束,例如数组oper元素的取值范围是[-3,3],则需要增加相应的等价类。
复合数据类型:复合数据类型是包含两个或两个以上相互独立的属性的输入数据,在进行等价类划分时需要考虑输入数据的每个属性的合法和非法取值。
举例:
struct student {string name;string course[100];int grade[100];}
对复合数据类型中的每个元素进行等价类划分,再将这些等价类进行组合,最终形成对软件整个输入域的划分。
等价类组合
测试用例生成:测试对象通常有多个输入参数,如何对这些参数等价类进行组合测试,来保证等价类的覆盖率,是测试用例设计首先需要考虑的问题。
所有有效等价类的代表值都集成到测试用例中,即覆盖有效等价类的所有组合。任何一个组合都将设计成一个有效的测试用例,也称正面测试用例。
无效等价类的代表值只能和其他有效等价类的代表值(随意)进行组合。因此,每个无效等价类将产生一个额外的无效测试用例,也称负面测试用例。
举例:判断三角形类型
边界值分析
边界值分析是对输入或输出的边界值进行测试的一种方法,它通常作为等价类划分法的补充,这种情况下的测试用例来自等价类的边界。
实践表明:大多数故障往往发生在输入定义域或输出值域的边界上,而不是内部。
因此,针对各种边界情况设计测试用例,通常会取得很好的测试效果。
基本思想:故障往往出现在程序输入变量的边界值附近
健壮性测试
健壮性测试是作为边界值分析的一个简单的扩充,它除了对变量的5个边界值分析取值外,还要增加一个略大于最大值(max+)以及略小于最小值(min-)的取值,检查超过极限值时系统的情况。
错误推测法
错误推测法是人们根据经验或直觉推测程序中可能存在的各种错误,从而有针对性地编写检查这些错误的测试用例的方法。






欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2