黑盒测试
黑盒测试
** 黑盒测试: ** 又称功能测试。属于穷举路径测试。黑盒测试仅考虑程序外部结构而不考虑程序的内部逻辑结构,针对软件的功能和界面进行的测试,目的是发现软件需求或者设计规格说明中的错误。
** 注意: ** 黑盒测试仅在程序接口处进行测试,只检查被测程序功能是否符合规格说明书的要求,程序是否能适当地输入数据并产生正确的输出信息。
** 黑盒测试主要检测下述几类错误: **
1、是否有不正确或遗漏了的功能。
2、在接口上,输入能否正确的接收,并能否正确的输出结果
。
3、能否有数据结构错误或外部信息(例如数据文件)访问错误。
4、性能上是否能满足最终需求。
5、是否有初始化或终止性错误。
** 黑盒测试用于测试的后期,主要回答下述问题: **
1、如何测试功能的有效性。
2、何种类型的输入将产生好的测试用例。
3、系统是否对特定的输入值敏感。
4、如何分割数据类的边界。
5、系统能够承受何种数据率和数据量。
6、特定类型的数据组将对系统产生何种影响。
** 黑盒测试的主要内容: **
1、接收性测试
黑盒测试是从软件的接口接收测试输出结果,具有接收性测试的特点。
2、α/β测试
α测试是项目组内的成员对被测试软件进行的测试;β测试是由项目组之外的人员参加的测试。
3、发行测试
在产品发行之前对其进行的仔细的测试。这期间,除了专门的测试人员外,还要几千个甚至几十万个用户与合作者通过使用对产品进行的测试,然后将信息反馈到技术部门。到了发行测试时,如果出现非改不可的错误就必须推迟软件的发行。
4、回归测试
此阶段,首先要检查以前找到的错误是否已经改正了。回归测试可使已更正的错误不再重现,并且不会产生新的错误。
5、RTM测试
RTM测试是指在产品发行阶段进行的测试。这个阶段每个错误都要经过高端人员同意才能更正。因为这个时候秀改软件非常容易产生其他的错误,故只有非改不可的错误才允许进行修改。
** 黑盒测试的方法: **
等价类划分、边界值分析、因果图、错误推测、状态推测等。下面将对这几种方法进行详解。
** 等价类划分: **
该方法是把所有可能的输入数据划分成若干个等价的子集,又称为等价类或等价区间。
有效等价类和无效等价类
例:某程序接口的输入条件1<i<999
有效等价类:1<i<999
无效等价类:i<=1 或i >=999
例:设一个程序的功能是读入代表三角形变长的3个整数,判断他们能否组成三角形,如果能,则输出组成的三角形是等边、等腰或任意三角形的识别信息。
等价类划分如下:
测试用例如下:
边界值分析:
使用边界值分析法设计测试用例,首先应确定边界情况,应当选取正好等于、刚刚大于或刚刚小于边界的值作为测试数据。
例:重量在1~5Kg范围内的邮件,可取1和5,还可取1.1 和4.9以及0.9和5.1等作为测试用例。
因果图:
因果图法借助图形,着重分析输入条件的各种组合,每种组合条件就是“因”,它必然有一个输出的结果,这就是“果”。
因果图生成测试用例的步骤:
下图为因果图的图形符号
例:根据下述规格说明,描述因果图。
第一列字符必须是“A”或“B”,第二列字符必须是一个数字,此情况下对文件进行修改;若第一列字符不正确,输出信息L;若第二列字符不正确,输出信息M。
因果关系表如下:
因果图如下:
判定表及测试用例:
错误推测:
有经验的测试人员往往都可以根据自己的工作经验和直觉推测出程序可能存在的错误,从而进行有针对性的测试。
基本思想:某处发现了缺陷,则可能会隐藏更多的缺陷。