九种用例设计方法
看到TestPlatform工具介绍上提到九种用例设计方法好多不了解,求指教这九种的具体说明 一、划分等价类的方法:下面给出六条确定等价类的原则。
① 在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。
② 在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类。
③ 在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。
④ 在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。
⑤ 在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。
⑥ 在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类。
设计测试用例:在确立了等价类后,可建立等价类表,列出所有划分出的等价类:
输入条件 有效等价类 无效等价类
然后从划分出的等价类中按以下三个原则设计测试用例:
① 为每一个等价类规定一个唯一的编号。
② 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步。直到所有的有效等价类都被覆盖为止。
③ 设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步。直到所有的无效等价类都被覆盖为止。
边界值分析法(边界值分析方法是对等价类划分方法的补充)
二、(1)边界值分析方法的考虑:
长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。
使用边界值分析方法设计测试用例,首先应确定边界情况。通常输入和输出等价类的边界,就是应着重测试的边界情况。应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。
(2)基于边界值分析方法选择测试用例的原则:
1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。
2)如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据。
3)根据规格说明的每个输出条件,使用前面的原则1)。
4)根据规格说明的每个输出条件,应用前面的原则2)。
5)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。
6)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。
7)分析规格说明,找出其它可能的边界条件。
三、错误推测法
错误推测法: 基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法。
错误推测方法的基本思想: 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。 例如, 在单元测试时曾列出的许多在模块中常见的错误。
以前产品测试中曾经发现的错误等, 这些就是经验的总结。 还有, 输入数据和输出数据为0的情况。 输入表格为空格或输入表格只有一行。 这些都是容易发生错误的情况。 可选择这些情况下的例子作为测试用例。
四、因果图方法
前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系, 相互组合等。 考虑输入条件之间的相互组合,可能会产生一些新的情况。 但要检查输入条件的组合不是一件容易的事情, 即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。 因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。 这就需要利用因果图(逻辑模型)。
因果图方法最终生成的就是判定表。 它适合于检查程序输入条件的各种组合情况。
利用因果图生成测试用例的基本步骤:
(1) 分析软件规格说明描述中, 那些是原因(即输入条件或输入条件的等价类),那些是结果(即输出条件), 并给每个原因和结果赋予一个标识符。
(2) 分析软件规格说明描述中的语义。找出原因与结果之间, 原因与原因之间对应的关系。 根据这些关系,画出因果图。
(3) 由于语法或环境限制, 有些原因与原因之间,原因与结果之间的组合情况不不可能出现。 为表明这些特殊情况, 在因果图上用一些记号表明约束或限制条件。
(4) 把因果图转换为判定表。
(5) 把判定表的每一列拿出来作为依据,设计测试用例。
从因果图生成的测试用例(局部,组合关系下的)包括了所有输入数据的取TRUE与取FALSE的情况,构成的测试用例数目达到最少,且测试用例数目随输入数据数目的增加而线性地增加。
详细的目前就这么多,剩下的,看看其他人有没有补充,我有时间找找看。 回复 2# 泡芙拓
谢谢 {:4_94:}
这些我知道 主要就是想知道其他几个的 回复 3# tiankai30
{:3_81:}那个有空找找 。。 :lol 1. 逐级细分
通俗说法的就是按照测试目标原理结构从上之下的分析模式,将分离出的测试元素逐个进行测试用例设计。
举个例子,比如浏览51testing页面,大致可分为:登陆-->浏览1级页面--->浏览2级页面....
针对此类测试目标,可考虑根据各个页面所在的目录层次,设计用例的顺序为:
1. 登陆
2. 各个1级页面
3. 各个2级页面
。。。
此类方法基本可用于任何测试目标的用例设计,但只能实现搭建用例框架的目的,通常都需要使用其他用例方法进行补充设计。
2. 域测试 (以下来源于百度百科)
由于程序中每条路径对应着一个输入域,是程序的一个子计算。如果程序的控制流有错误,则对某一特定的输入可能执行的是一条错误路径,这种错误被称为路径错误或域错误。而域测试主要是针对域错误进行的测试。
域测试的基本步骤如下:
(1):根据各个分支谓词,给出子域的分割图;
(2):对每个子域的边界,采用ON-OFF-ON原则选取测试点。
(3):在子域内选取一些测试点。
(4):针对这些测试点进行测试。
3. 输出域分析法
域分析法主要考虑从"输入"入手设计用例,若考虑从"输出"入手设计,则就是"输出域分析法" http://bbs.51testing.com/thread-557311-1-1.html。根据你的激发,我整理了一份文档,但是有些方法,还是找不到哎,看看大家的补充了。 在哪都能看到5楼…… 在哪都能看到5楼…… 回复 9# zrj1989baobao
说明人家活跃嘛 嘿嘿
页:
[1]