软件测试的艺术:边界值分析

边界值分析:所谓边界条件,是指输入和输出等价类中那些恰好处于边界、或超过边界、或在边界以下的状态。边界值分析方法与等价划分之间的重要区别在于边界值分析考察正处于等价划分边界或在边界附近的状态,边界值分析和等价划分的一个弱点是未对输入条件的组合进行分析。它们存在两方面的不同:

  1. 与从等价类中挑选出任意一个元素作为代表不同,边界值分析需要选择一个或多个元素,以便等价类的每个边界都经过一次测试。
  2. 与仅仅关注输入条件(输入空间)不同,还需要考虑从结果空间(输出等价类)设计测试用例。

用边界值分析方法设计测试用例的通用指南:

  1. 如果输入条件规定了一个输入值范围,那么应针对范围的边界设计测试用例,针对刚刚越界的情况设计无效输入测试用例。举例:如果输入值的有效范围是-1.0~+1.0,那么应该针对-1.0、+1.0、-1.001、+1.001的情况设计测试用例;
  2. 如果输入条件规定了输入值的数量,那么应针对最小数量输入值、最大数量输入值,以及比最小数量少一个、比最大数量多一个的情况来设计测试用例。举例,如果某个输入文件可容纳1~255条记录,那么应根据0、1、255、256条记录的情况设计测试用例;
  3. 对每个输出条件应用指南1,检查结果空间的边界。因为输入范围的边界并不总是能代表输出范围的边界情况(例如三角函数sin的情况就是如此)。同样,总是产生超过输出范围的结果也是不大可能的,但无论如何,应该考虑这种可能性;
  4. 对每个输出条件应用指南2,如果某个信息检索系统根据输入请求显示关联程度最高的信息摘要,而摘要的数量从未超过4条,则应编写测试用例,使程序显示0条、1条、4条摘要,还应设计测试用例,导致程序错误地显示5条摘要;
  5. 如果程序的输入或输出是一个有序序列(例如顺序的文件、线性列表或表格),则应特别注意该序列的第一个和最后一个元素;
  6. 此外,发挥聪明才智找出其他边界条件。

猜你喜欢

转载自www.cnblogs.com/CarolSpace/p/9777299.html