边界值分析法

发表于:2009-09-21来源:作者:点击数: 标签:分析法
MI LY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR

MILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">    测试经验丰富的前辈们,我们公司大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对个中边界情况设计测试用例,可以查处更多的错误。


  首先来了解一下边界点的定义,边界点分为上点、内点和离点。如图:

  结合上面的图示。
  上点,就是边界上的点,不管它是开区间还是闭区间,就是说,如果该点是封闭的,那上点就在域范围内,如果该点是开放的,那上点就在域范围外;
  内点,就是在域范围内的任意一个点;
  离点,就是离上点最近的一个点,如果边界是封闭的,那离点就是域范围外离上点最近的点,如果边界是开放的,那离点就是域范围内离上点最近的点。
  现在大家都知道边界点了,那接下来就讲一下,边界值分析方法的原则:
  1        如果输入(输出)条件规定了取值范围,则应该以该范围的边界值及边界附近的值作为测试数据;
  2        如果输入(输出)条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据;
  3        如果程序规格说明书中提到的输入或输出是一个有序的集合,应该注意选取有序集合的第一个和最后一个元素作为测试数据;
  4        如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试数据。

  举例:
       
闭区间[50100]的上点为50100,离点是49101,在域范围内的都是内点;
       
半开半闭区间(50100]的上点为50100,离点是49101,在域范围内的都是内点;
       
开区间(50100)的上点为50100,离点是4999,在域范围内的都是内点;
测试用例略。在下面的流程分析法里,我会将等价类、边界值和流程分析法一起举例,一起写测试用例。

原文转自:http://www.ltesting.net