51Testing软件测试论坛

标题: 九种用例设计方法 [打印本页]

作者: tiankai30    时间: 2012-4-26 10:23
标题: 九种用例设计方法
看到TestPlatform工具介绍上提到九种用例设计方法
[attach]78718[/attach]
好多不了解,求指教这九种的具体说明
作者: 泡芙拓    时间: 2012-4-26 12:52
 一、划分等价类的方法:下面给出六条确定等价类的原则。
  ① 在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。
  ② 在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类。
  ③ 在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。
  ④ 在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。
  ⑤ 在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。
  ⑥ 在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类。
  设计测试用例:在确立了等价类后,可建立等价类表,列出所有划分出的等价类:
      输入条件 有效等价类 无效等价类
  然后从划分出的等价类中按以下三个原则设计测试用例:
  ① 为每一个等价类规定一个唯一的编号。
  ② 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步。直到所有的有效等价类都被覆盖为止。
  ③ 设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步。直到所有的无效等价类都被覆盖为止。
边界值分析法(边界值分析方法是对等价类划分方法的补充)
  二、(1)边界值分析方法的考虑:
  长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。
  使用边界值分析方法设计测试用例,首先应确定边界情况。通常输入和输出等价类的边界,就是应着重测试的边界情况。应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。
  (2)基于边界值分析方法选择测试用例的原则:
  1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。
  2)如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据。
  3)根据规格说明的每个输出条件,使用前面的原则1)。
  4)根据规格说明的每个输出条件,应用前面的原则2)。
  5)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。
  6)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。
  7)分析规格说明,找出其它可能的边界条件。
  三、错误推测法
  错误推测法: 基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法。
  错误推测方法的基本思想: 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。 例如, 在单元测试时曾列出的许多在模块中常见的错误。
  以前产品测试中曾经发现的错误等, 这些就是经验的总结。 还有, 输入数据和输出数据为0的情况。 输入表格为空格或输入表格只有一行。 这些都是容易发生错误的情况。 可选择这些情况下的例子作为测试用例。
  四、因果图方法
  前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系, 相互组合等。 考虑输入条件之间的相互组合,可能会产生一些新的情况。 但要检查输入条件的组合不是一件容易的事情, 即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。 因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。 这就需要利用因果图(逻辑模型)。
  因果图方法最终生成的就是判定表。 它适合于检查程序输入条件的各种组合情况。
  利用因果图生成测试用例的基本步骤:
  (1) 分析软件规格说明描述中, 那些是原因(即输入条件或输入条件的等价类),那些是结果(即输出条件), 并给每个原因和结果赋予一个标识符。
  (2) 分析软件规格说明描述中的语义。找出原因与结果之间, 原因与原因之间对应的关系。 根据这些关系,画出因果图。
  (3) 由于语法或环境限制, 有些原因与原因之间,原因与结果之间的组合情况不不可能出现。 为表明这些特殊情况, 在因果图上用一些记号表明约束或限制条件。
  (4) 把因果图转换为判定表。
  (5) 把判定表的每一列拿出来作为依据,设计测试用例。
  从因果图生成的测试用例(局部,组合关系下的)包括了所有输入数据的取TRUE与取FALSE的情况,构成的测试用例数目达到最少,且测试用例数目随输入数据数目的增加而线性地增加。

详细的目前就这么多,剩下的,看看其他人有没有补充,我有时间找找看。
作者: tiankai30    时间: 2012-4-27 10:23
回复 2# 泡芙拓

谢谢   
这些我知道     主要就是想知道其他几个的
作者: 泡芙拓    时间: 2012-4-27 12:07
回复 3# tiankai30


    那个有空找找
作者: niunjxtest    时间: 2012-4-27 12:41
。。
作者: wuyepiaoxue134    时间: 2012-4-27 17:56

作者: Jackc    时间: 2012-4-28 14:45
1. 逐级细分
   通俗说法的就是按照测试目标原理结构从上之下的分析模式,将分离出的测试元素逐个进行测试用例设计。
   举个例子,比如浏览51testing页面,大致可分为:登陆-->浏览1级页面--->浏览2级页面....
    针对此类测试目标,可考虑根据各个页面所在的目录层次,设计用例的顺序为:
   1. 登陆
   2. 各个1级页面
   3. 各个2级页面
  。。。
  此类方法基本可用于任何测试目标的用例设计,但只能实现搭建用例框架的目的,通常都需要使用其他用例方法进行补充设计。

2. 域测试  (以下来源于百度百科)
 由于程序中每条路径对应着一个输入域,是程序的一个子计算。如果程序的控制流有错误,则对某一特定的输入可能执行的是一条错误路径,这种错误被称为路径错误或域错误。而域测试主要是针对域错误进行的测试。
  域测试的基本步骤如下:   
  (1):根据各个分支谓词,给出子域的分割图;   
  (2):对每个子域的边界,采用ON-OFF-ON原则选取测试点。   
  (3):在子域内选取一些测试点。   
  (4):针对这些测试点进行测试。

3. 输出域分析法
   域分析法主要考虑从"输入"入手设计用例,若考虑从"输出"入手设计,则就是"输出域分析法"
作者: 泡芙拓    时间: 2012-5-11 10:57
http://bbs.51testing.com/thread-557311-1-1.html。根据你的激发,我整理了一份文档,但是有些方法,还是找不到哎,看看大家的补充了。
作者: zrj1989baobao    时间: 2012-5-11 14:00
在哪都能看到5楼……
作者: Negayiushi    时间: 2013-8-15 14:20
在哪都能看到5楼……
作者: 楠族开心果    时间: 2013-8-15 18:40
回复 9# zrj1989baobao


    说明人家活跃嘛 嘿嘿




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2