前几周课上,老师给我们介绍了黑盒测试的一些基本的内容和方法,这里,我对老师讲过的内容做一下小结:
黑盒测试是一种常用的软件测试方法,它将被测软件看作一个打不开的黑盒,主要根据功能需求设计测试用例,进行测试。我们必须清楚的认识到,
对于黑盒测试而言,我们是并不知道其内部详细结构的,我们和普通用户一样,无法直接接触代码,而是只能根据使用功能说明来设计测试用例,进行测试。
其最基本的观点是,只关心输入数据和输出结果,而不关心内部处理过程。
对于黑盒测试,我们最容易想到的就是穷举法,然而这种方法是非常没有效率,目的性且不具有可实现性。常用的可行的黑盒测试方法有如下四种:等价类划分,
边界值分析法,因果图发,决策表法。
1.首先关于等价类划分的方法。
在之前的博客中有过概要性的介绍,也给出了测试实例,通过这种方法,我们可以方便的设计出测试用例,实现对软件功能的测试。
2.边界值分析法。
大量的软件测试实践表明,故障往往出现在定义域或值域的边界上,而不是在其内部。为检测边界附近的处理专门设计测试用例,通常都会取得很好的测试效果。
因此边界值分析法是一种很实用的黑盒测试用例方法,它具有很强的发现故障的能力。其关键是根据边界设计好合适的测试用例。
3.因果图法。
对于前两者而言,都是着重考虑输入条件,如果程序输入之间没有什么联系,采用等价类划分和边界值分析是一种比较有效的方法。但是对于输入之间有
联系,如约束关系,组合关系等情况时,使用前两者很难将这些关系描述出来,因此必须考虑使用一种适合于描述对于多种条件的组合,产生多个相应动作的测试方法,
因果图正是在此背景下提出的。因果图发通过各种特定的符号表示出各个输入之间的关系,约束,从而能方便的根据因果图设计出测试用例。
4.决策表法。
决策表是把作为条件的所有输入的各种组合值以及对应输出值都罗列出来而形成的表格。它能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免
遗漏。因此,利用决策表能够设计出完整的测试用例集合。
一些黑盒测试的选择建议
物理量或相对独立→ 边界值分析和等价类方法
不是独立的 → 决策表测试
可保证是单缺陷假设 → 边界值分析和健壮性测试
多缺陷假设 → 边界值分析测试和决策表测试
包含大量例外处理 → 健壮性测试和决策表测试
逻辑量 → 等价类测试用例和决策表测试