黑盒测试是一种功能测试,有时也被成为数据驱动的测试。它把程序看做一个完全封闭的黑盒子,在测试者完全不了解,或不考虑程序的内部结构和逻辑处理过程的情况下,根据规格说明书规定的功能来设计测试用例,检查程序的功能是否符合规格说明的要求。程序是否能适当的接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或者文件)的完整 性。
黑盒测试主要是为了发现以下几类问题:
- 是否有不正确或遗漏的功能
- 接口能否正确的接收输入信息? 能否正确的给出输出结果?
- 是否有数据结构或者外部信息(如数据文件)的访问错误
- 是否有初始化或者终止性错误
- 是否满足性能需求
一般常见的黑盒测试用例设计方法主要有等价类划分法,边界值分析法,错误猜测法,因果图方法等,其他的一些测试方法还有 判定表驱动法,正交试验法,功能图法,以及场景法等。
今天重点来说一下等价类划分法和边界值分析法的使用
等价类划分法
我们不能穷举所有可能的输入数据进行测试,所以只能选取少量有代表性的数据进行测试,来揭露尽可能多的程序错误。把所有可能的输入数据,即程序的输入域划分成若干个子集,然后从每个子集中选取少量具有代表性的数据作为测试用例,这就是等价类划分法。
-
划分等价类
首先介绍一下什么是有效的输入数据和无效的输入数据。有效的输入数据是指符合规格说明要求的合理的输入数据,它主要用来检验程序是否实现了规格说明中的功能。无效的输入数据是指不符合规格说明要求的不合理或非法的输入数据,它主要用来检验程序是否做了规格说明以外的事。
如果把所有可能的输入数据(有效和无效)划分成若干个等价类&#x