黑盒测试技术

时间:2024-03-28 08:38:48

黑盒测试技术(理论)

等价类划分法:

  • 有效等价类:有效值的集合(符合程序要求)
  • 无效等价类:无效值的集合(不符合要求,不合理,无意义的数据)

划分原则:

  1. 根据有效类的标准取值:若有效输入数据取值为区间的话,区间内为有效等价类,区间外则为无效等价类. 故:有一个有效等价类,两个无效类
  2. 根据有效类的标准取值:若有效输入数据取值为"必须成立的值",如密码等,有效等价类为密码,其他为无效等价类
  3. 根据有效类的取值标准:若有效输入数据取值为一组可能的值,或者要求符合条件.则可以分为若干个有效等价类,和一个无效等价类;
  4. 若在一个等价类中每个或者每种数据在程序中的处理不同,这应该将等价类划分为更小的等价类;

注意:同一个等价类中的数据对于发现程序缺陷的能力是相同的,如果使用等价类中的一个数据不能捕获缺陷,其他的也都不行,同理,一个可以其他的也都可以捕获.所以等价类中的所有输入数据都是等效的

应用:设计测试用例

  1. 确定测试对象,保证非测试对象的正确性。

  2. 为每个等价类规定一个唯一编号。

  3. 设计有效等价类的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,直到测试用例覆盖了所有的有效等价类。

  4. 设计无效等价类的测试用例,使其覆盖所有的无效等价类。

边界值分析法

边界值分析法是对软件的输入输出进行测试的一种方法,它通常作为等价类测试的一种补充测试

例如在等价类划分法中,会产生多个边界,边界值分析法就是在这些边界附近寻找某些点作为测试数据,而不是在等价类内部找.

边界值的选取有两种方式

选取5个值:最小值、略大于最小值、正常值、略小于最大值、最大值。

选取7个值:略小于最小值、最小值、略大于最小值、正常值、路小于最大值、最大值

略大于最大值。 (健壮测试)

黑盒测试技术

因果图设计法

因果图需要处理输入之间的作用关系,还要考虑输出情况.因此它包含复杂的逻辑关系,这些复杂的逻辑关系通常用图示来展现,这些图示就是因果图.

输入,输出之间的关系

输入与输出之间的关系

因果图使用一些简单的逻辑符号和直线将程序的因(输入)与果(输出)连接起来,一般原因用ci表示,结果用ei表示, ci与ei可以取值“0″或1”,其中“0”表示状态不出现表示状态出现

ci与ei 之间的关系有恒等、非(~)、或(ˇ)、与****(^)

输入与输入之间的关系

例如,某一软件用于统计体检信息,在输入个人信息时,性别只能输入男或女,这两种输入不能同时存在,而且如果输入性别为女,那么体检项就会受到限制。

异、或、唯一、要求

输出与输出之间的关系

M强制,强制约束关系

使用因果设计测试用例的步骤:

1)使用程序规格说明书描述内容,确定程序的输入输出,即确定"原因"和"结果"

2)分析得出输入与输入之间、输入与输出之间是的对应关系,将这些输入与输出之间的关系使用因果图表示出来。

3)将因果图转换为决策表。(决策表将在下一小节学习)根据决策表设计测试用例

设计思想以及实际操作:

为什么使用因果图****设计法:

等价类边界值:只是孤立地考虑各个输入数据的测试效果,没有考虑输入数据的组合及其相互制约关系。

决策表:取尽所有可能,则组合数目将是一个天文数字。

因果图:利用图解法分析输入的各种组合情况,适合于描述多种输入条件的组合、相应产生多个动作的方法。

因果图构造过程:

明确要求后,明确的将原因和结果分开

黑盒测试技术

三步设计因果图:

1.分析原因与结果之间,原因与原因之间的逻辑关系,用因果图的方法表示

2.因果图转换成决策表:将原因作为决策表的条件项,将结果作为决策表的动作选哪个,完成决策表的填写.

3.从决策表的每一列产生出测试用例:去除决策表中不可能出现的规则,根据出现的规则设计出测试用例,对于逻辑结构复杂的软件,先用因果图进行图形分析,再用决策表进行统计,最后设计测试用例.

因果图利用图解法分析输入的各种组合情况,适合于描述多种输入条件的组合、相应产生多个动作的方法。

决策表

决策表也称为判定表,其实质就是一种逻辑表。在程序设计发展初期,判定表就已经被当作程序开发的辅助工具了,帮助开发人员整理开发模式和流程,因为它可以把复杂的逻辑关系和多种条件组合的情况表达的既具体又明确,利用决策表可以设计出完整的测试用例集合。

黑盒测试技术

决策表的组成

决策表通常由4部分组成

  • 条件桩:列出问题的所有条件,除了某些问题对条件的先后次序有要求之外,通常决策表中所列条件的先后次序都无关紧要。
  • 条件项:条件项就是条件桩的所有可能取值
  • 动作桩:动作桩就是问题可能采取的操作,这些操作一般没有先后次序之分。
  • 动作项:指出在条件项的各组取值情况下应采取的动作。

在决策表中,任何一个条件组合的特定取值及其相应要执行的操作称为一条规则,即决策表中的每一列就是一条规则,每一列都可以设计一个测试用例,根据决策表设计测试用例就不会有所遗漏。

合并规则

决策表可以忽略无关条件项,将若干条规则合并.即条件该条件项在此情况下不影响该动作项,即可以将其两项或多项合并

设计步骤:

列出所有的条件桩和动作桩,

确定规则的个数

填入条件项,动作项

简化,合并相似规则

依据判定表中的每一个规则,选择符合改规则的数据,作为测试用例

例题

某货运公司收费界面收费计费标准如下:若收件地点在本省,则快件6元/公斤,慢件4元/公斤.若收件地点在外省,则在25公斤以内(包括25公斤),快件8元/公斤,慢件6元/公斤;而超过25公斤时,快件10元/公斤,慢件8元/公斤

1.列出所有的条件桩和动作桩,

条件桩:重量,收件地点,快慢件

动作桩:收费标准4,6,8,10元/公斤

黑盒测试技术

2.决定规则个数:

省内?Y/N

快件?Y/N

小于25公斤?Y/N

黑盒测试技术

3.填入条件项,动作项

黑盒测试技术

4.简化,合并相似规则

黑盒测试技术

5.依据判定表中的每一个规则,选择符合该规则的数据,作为测试用例

例如:按照第一条规则可以设计测试用例

地点省内,重量25公斤以内,方式为快件,预期结果为4元/公斤

正交实验设计法

指从大量实验点中挑选除湿量的有代表性的点,根据Glois理论导入出“正交表”从而合理安排实验的方法

正交试验设计法包含三个关键因素:

  1. 指标:判断实验结果优劣的标准
  2. 因子:因子也成为因素是指所有影响试验指标的条件
  3. 因子的状态:因子的状态也叫因子的水平,他指的是因子变量的取值

正交实验法设计测试用例的步骤

  1. 提取因子,构造因子状态表
  2. 加权筛选,简化因子状态表
  3. 构造正交表,设计测试用例

例如下图:

  1. 提取因子,构造因子状态表

黑盒测试技术

  1. 加权筛选,构造因子状态表

在实际软件测试中,软件的因子及因子的状态会有很多,每个因子及其状态对软件的作用也大不相同,如果把这些因子及状态都划分到因子状态表中,最后生成的测试用例会相当庞大,从而影响软件测试的效率.因此需要根据因子及状态的重要程度进行加权筛选,选出重要的因子与状态,简化因子-状态表

  1. 构建正交表,设计测试用例

黑盒测试技术