用例设计方法
一、等价类划分
等价类划分属于典型的功能测试方法,根据程序对数据的要求,把程序的输入域划分成若干个部分,区分出哪些数据有有效的,哪些数据是无效的,从每个部分中取少数代表性数据作为测试用例。这样,每一类的代表性数据中的作用都等价与这类中的其他值。
等价类划分有两种不同的情况:有效等价类和无效等价类。
有效等价类:对程序规格有意义,合理的输入数据集合。程序接收到有效等价类数据,可以正确执行计算。
无效等价类:对程序规模无意义,不合理的输入数据集合,程序接收到无效等价类数据。应该给出错误提示,或者不让用户输入。
二、边界值
三、因果图
在一个功能模块或一个界面中,往往会有多个控件,这些控件一般会有一定的制约关系或者组合关系,并且输出依赖于输入的条件。如果只是单独去测每个控件,往往使测试有很多冗余数据。同时又会造成测试的不全面。遗漏这些输入的组合及输出对输入的依赖关系。
应用场合
在一个界面中,有多个控件,测试的时候要考虑控件的组合关系,不同的空间组合会产生不同的输出结果的组合。为了弄清楚什么样的输入组合会产生什么样的输出组合,使用因果图法。
2.因果图的核心
因---原因、输入条件;
果---结果、输出结果。
使用图形的方式,分析软件输入和输出的对应关系。
3.图形符号
a.基本图形,表示输入和输出的对应关系:
*恒等
<a href="https://s1.51cto.com/wyfs02/M00/99/C1/wKiom1lL1CihvCOwAADC4SkYzzA895.png-wh_500x0-wm_3-wmp_4-s_2566567260.png" target="_blank"></a>
*与
*或
因果图中的约束条件:
①互斥。
*表示a.b.c三个原因不会同时成立,最多有一个可能成立。
*a.b.c不同时为1,即a.b.c中至多只有一个。
②包含
*表示a.b.c这3个原因至少有一个必须成立。
*a.b.c至少有一个1,即a.b.c中不能同时为0.
③唯一
*表示a.b.c中必须有一个成立,且仅有一个成立。
④要求
*表示当a出现,b必须也出现。
*若a=1,则b必须为1,即不可能a=1且b=0
⑤屏蔽
*若a=1,则b必须为0,而当a为0时,b的值不定。
使用因果图法设计测试用例基本步骤:
1.找出所有的输入条件;
2.明确所有的输入结果;
3.明确所有条件之间的制约关系以及组合关系
4.明确所有输出之间的制约关系以及组合关系
5.找出什么样的输入条件组合会产生哪种输出结果。
四、判定表
画因果图只是一种辅助工具,通过分析最终得到判定表,再通过判定表编写测试用列。但有时候画因果图非常麻烦,影响测试效率,所以在应用熟练之后,可以直接写判定表,进而编写测试用例。
判定表方法就是因果图法的简化,步骤完全一样,省略画图过程。
五、正交排列法
六、场景法
定义
现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。这种在软件设计方面的思想也可引入到软件测试中,可以比较生动地描绘出事件触发时的情景,有利于测试设用例场景用来描述流经用例的路径,从用例开始到结束遍历这条路径上所有基本流和备选流。
<a href="https://s1.51cto.com/wyfs02/M02/9A/4A/wKiom1lTvzjARJP7AAB8FJqC4KU688.png-wh_500x0-wm_3-wmp_4-s_3267750419.png" target="_blank"></a>
右图中经过用例的每条路径都用基本流和备选流来表示:
基本流用黑色表示,是经过用例的最简单的路径。
备选流用不同的彩色表示,一个备选流可能从基本流开始,在某个特定条件下执行,然后重新加入基本流中(如备选流 1 和 3);也可能起源于另一个备选流(如备选流 2),或者终止用例而不再重新加入到某个流(如备选流 2 和 4)。
应用的范围
1) 基本上每个软件都会用到这种方法,因为每个软件后面都有业务的支撑
2) 比较常见的有: 网上购物流程, ATM机取款流程等
步骤
1) 画出需要测试路径的流程图(一般选择工具Office Visio)
2) 分析基本流和备选流
3) 根据基本流和备选流设计测试用例
七、测试大纲方法
八、状态转换图(实际工作中用的少)
本文转自327051661 51CTO博客,原文链接:http://blog.51cto.com/andyboge/1941122,如需转载请自行联系原作者