等价类测试和输入域分区有什么区别?

时间:2015-04-19 16:12:52

标签: testing

我现在正在学习软件测试,只是想知道等价类测试和输入域分区之间的区别,看起来他们两个都要分区输入域。

1 个答案:

答案 0 :(得分:1)

坦率地说,在我作为软件测试工程师的职业生涯中,我没有遇到过很多关于输入域分区的提及。

但是这个术语存在,让我们试着看看等价类测试和输入域分区之间是否存在差异?

等价类技术将可能的测试数据(例如应用程序模块)划分为等效数据的分区。它们是“等价的”,因为该分区的任何成员都可以完美地表示该分区的其他成员,理论上,您只需要使用其中一个分区成员进行一次测试,以便对该分区进行足够的测试。此外,分区不应重叠。

是的我知道,这有点麻烦,但让我们来看看这个例子:你在网页上有一个输入字段,它接受所有类型的字符,但最多可以接收256个字符。它为您提供以下等价分区(简化):

  • 字符类型:
    • 仅限字母
    • 只有数字
    • 只有特殊字符
    • 混合字符(字母+数字+规格字符)
  • Char数量:
    • 0
    • 大于0
    • < 256
    • 256

每个等价分区都有子分区,例如“字母”:

  • 大字母
  • 小写字母
  • 混合字母

这意味着为了充分测试“字母分区”,您必须设计包含至少一个子分区的测试用例。假设它将是“字母 - >大字母”:“TEST INPUT STRING”。看一下,我们还将测试字符串与“Char quantity - > 0”等价分区相结合。

基本上说,结合“Char类型”和“Char数量”分区的子分区,您将能够设计一个最小测试集来测试该字段的输入数据。

从另一端 的输入域包含该程序的所有可能输入,它与应用程序的可能输入的等价类非常相似模块

有时会谈论程序的输入域,也可以说 regions ,这与等价分区的子分区相同。此外,那些输入域(以及相应的区域)必须不重叠(因此它们必须不在等价分区测试中)。

尽管如此,我会将这两个术语视为一个术语,它们描述的是同一个问题但使用不同的词语。

相关问题