工作5年,测试用例都设计不好?来看看大神的用例设计总结

每天进步一点点,关注我们哦,每天分享测试技术文章

本文章出自【码同学软件测试】

码同学公众号:自动化软件测试,领取资料可加:magetest

码同学抖音号:小码哥聊软件测试

01黑盒测试方法

 

1.1、等价类划分法:

根据软件测试原则可以知道,要做到穷举是不可能的,事实上也是不必要的。为了减少工作量,需要对测试用例进行适当选取。等价类划分法便提供了一种选取测试用例的方法

 

等价类划分法把程序的输入域划分为若干部分,然后从每个部分中选取少量具有代表性数据当作测试用例。每一类的代表性数据在测试中的作用等价于这一类中的其他值。也就是说,如果某一类的一个用例发现了错误,这一类中的其他用例也可能发现同样的错误;反之,若某一类中第一个用例没有发现错误,则这一类中的其他用例也不会查出错误。

 

使用这一方法设计测试用例,首先必须在分析需求规格说明书的基础上划分等价类,列出等价类表。等价类划分有两种不同的情况:有效等价类和无效等价类。

 

在划分等价类时,有一些规则应该遵循。

1.如果输入条件规定了取值范围或个数,则可确定一个有效等价类和两个无效等价类。例如,输入值时选课人数,在0~100之间,那么有效等价类是:0<=学生人数<=100;无效等价类是:学生人数<0;学生人数>100。

2.如果输入条件规定了输入值的集合或是规定了“必须如何”的条件,则可确定一个有效等价类和一个无效等价类。例如,输入日期类型的数据。那么有效等价类是日期类型的数据;无效等价类是非日期类型的数据。

3.如果输入的是布尔表达式,可以分为一个有效等价类和一个无效等价类,比如要求密码非空,则有效等价类为非空密码,无效等价类为空密码。

4.如果输入条件是一组值,且程序对不同的值有不同的处理方式,则每个允许的输入值对应一个有效等价类,所有不允许的输入值的集合为一个无效等价类。例如,输入条件“职称”的值是初级、中级、高级,那么有效等价类应该有3个:初级、中级、高级。无效等价类有一个:其他任何职称。

5.如果规定了输入数据必须遵循的规则,可以划分出一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。

 

划分好等价类后,就可以设计测试用例了。设计测试用例的步骤可以归结为3步:

1.对每个输入和外部条件进行等价类划分,画出等价类表,并为每个等价类进行编号。

2.设计一个测试用例,使其尽可能多地覆盖有效等价类,重复这一步,直到所有的等价类被覆盖。

3.为每一个无效等价类设计一个测试用例。

 

1.2、边界值法:

人们长期的测试工作经验中得知,大量的错误往往发生在输入和输出范围的边界上,而不是范围的内部。因此,针对边界情况设计测试用例,能够更有效地发现错误。

 

通常情况下,软件测试所包含的边界条件有以下几种类型:数字、字符、位置、质量、大小、速度、方位、尺寸、空间等;对应的边界值应该在最大/最小、首位/末位、上/下、最快/最慢、最高/最低、最短/最长、空/满等情况。

 

用边界值分析法设计测试用例时应当遵循几条原则:

1.如果输入条件规定了取值范围,应以该范围的边界内及刚刚超范围的边界外的值作为测试用例。如以a和b作为输入条件,测试用例应当包括a和b及略大于a和略小于b的值。

2.若规定了值的个数,应分别以最大、最小个数和稍小于最小和大于最大个数作为测试用例。

3.针对每个输出条件,也使用上面的两条原则。

4.如果需求规格说明书中提到的输入或输出范围是有序的集合,如顺序文件、表格等,应注意选取有序集的第一个和最后一个元素作为测试用例。

5.分析需求规格说明书,找出其他可能的边界条件。

1.3、判定表(决策表):

多个条件、每个条件都有多个取值、组合

免费领取码同学软件测试课程笔记+超多学习资料+完整视频+面试题,可加微信:magetest

 

在一些数据处理问题中,某些操作是否实施依赖于多个逻辑条件的取值。在这些逻辑条件取值的组合所构成的多种情况下,分别执行不同的操作。处理这类问题的一个非常有力的工具就是决策表。

 

决策表通常由4个部分组成:

1.条件桩。列出问题的所有条件。

2.条件项。列出所列条件下的取值,在所有可能的情况下的真假值。

3.动作桩。列出问题规定可能采取的动作。

4.动作项。列出在条件项的各种取值情况下应采取的动作。

示例:(自动饮料售货机)

 

 

 

1.4、正交表(正交实验法):

参考资料:

https://blog.csdn.net/ygyoe/article/details/80183547

 

在将因果图转换为决策表来生成测试用例时,若要进行全面测试,其得到的测试用例数目多的惊人。正交实验法是从大量的实验数据中挑选适量的、具有代表性的点,合理安排测试的设计方法。

 

日本著名的统计学家田口玄一将正交实验选择的水平组合列成表格,称为正交表。

 

正交表的形式为:L[行数](水平数[因素数]):

其中行数表示正交表中行的个数,即实验次数,也是通过正交实验法设计的测试用例个数。

因素数是正交表中列的个数,即要测试的功能点。

水平数是任何单个因素能够取得的值的最大个数。

 

正交表具有以下两项性质:

1.每一列中,不同的数字出现的次数相等。

2.任意两列中数字的排列方式齐全相等。

 

每个因素的每个水平于另一个因素的每个水平各碰一次,这就是正交性

 

1.5、场景法:

现在软件很多都是用事件触发来控制流程,事件触发时的情形变形成场景,而同一事件不同的触发顺序和处理结果就形成了事件流。

 

用例场景是通过描述流经用例的路径来确定的过程,这个流经过程要从用例开始到结束遍历其中所有的基本流和备选流。

1.基本流。采用黑直线表示,是经过用例的最简单路径,表示无任何差错,程序从开始执行到结束。

2.备选流。采用不同颜色表示,一个备选流可以从基本流开始,在某个特定的条件下执行,然后重新加入基本流中,也可以起源于另一个备选流,或终止用例,不再加入到基本流中。

示例:(ATM机)

 

1.6、错误推断法:

根据经验或直觉推测程序中可能存在的各种错误。

 

02黑盒测试方法选择

黑盒测试的每种测试方法都有各自的优点、缺点,需要测试人员根据实际项目特点和需要选择合适的方法设计测试用例。以下是选择方法的4条经验:

1.在任何情况下都必须选择边界值分析方法。经验表明,用这种方法设计出的测试用例发现程序错误的能力最强。

2.必要时用等价类划分法补充一些测试用例。

3.根据经验或直觉推测程序种可能存在的各种错误,用错误推测法再追加一些测试用例。

4.如果程序的功能说明中含有输入条件的组合情况,则可选用因果图法和决策表法。

选择合适的测试方法能够极大地提高黑盒测试的效率。除了上述的4条经验外,还需要测试人员积累实际的测试经验,做出合适的选择。

 

03黑盒测试方法与白盒测试方法的比较

白盒测试和黑盒测试是两类软件测试方法,传统的软件测试活动基本上都可以划分到这两类测试方法中。看图

 

 

白盒测试和黑盒测试各有侧重点,不能相互取代,在实际测试活动中,这两种测试方法不是截然分开的。

免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频 ☞ 可加:magetest/关注码同学公众号:自动化软件测试

本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

posted @ 2022-08-01 09:27  码同学软件测试  阅读(97)  评论(0编辑  收藏  举报