(二)边界值分析法

(二)边界值分析法1 定义 边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法 通常边界值分析法是作为对等价类划分法的补充 这种情况下 其测试用例来自等价类的边界 根据大量的测试统计数据 很多错误是发生在输入或输出范围的边界上 而不是发生在输入 输出范围的中间区域 因此针对各种边界情况设计测试用例 可以查出更多的错误 使用边界值分析方法设计测试用例 首先应确定边界情况 通常输入和输出等价类的边界

1.定义:

边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。根据大量的测试统计数据,很多错误是发生在输入或输出范围的边界上,而不是发生在输入/输出范围的中间区域。因此针对各种边界情况设计测试用例,可以查出更多的错误。

使用边界值分析方法设计测试用例,首先应确定边界情况。通常输入和输出等价类的边界,就是应着重测试的边界情况。应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。

2.边界值分析法与等价类分析法的区别:

1) 边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件。

2) 边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。

3.软件测试所包含的边界检验有几种类型:

数字、字符、位置、重量、大小、速度、方位、尺寸、空间等。

相应地,以上类型的边界值应该在:

最大/最小、首位/末位、上/下、最快/最慢、最高/最低、最短/最长、空/满等情况下,利用边界值作为测试数据。

     
     
    (二)边界值分析法
     

4.基于边界值分析方法选择测试用例的原则:

1) 如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。

2) 如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据。

Ø  例如,一个输入文件应包括1~255个记录,则测试用例可取1和255,还应取0及256等。

3) 将规则1)和2)应用于输出条件,即设计测试用例使输出值达到边界值及其左右的值。 

4) 如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。

5) 如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。

6) 分析规格说明,找出其它可能的边界条件。

5.用例说明:

在等价类边界上以及两侧的请看设计测试用例。取的值刚达到这个范围的边界值,以及刚刚超过这个边界值做为测试的输入数据,一般都是大一的数,或是取小一的数做为测试数据。

 

如:

1.手机号码的位数目前都是11位:

 (二)边界值分析法

可以这样设计测试用例:

1)输入10位数字—边界值

2)输入11位数字—边界值、等价类

3)输入12位数字—边界值

 

2.如在等价类中举例的身份证号码的位数:

 (二)边界值分析法

可以这样设计测试用例:

1)输入14位身份证号码—边界值

2)输入15位身份证号码—边界值、等价类

3)输入16位身份证号码—边界值

4)输入17位身份证号码—边界值

5)输入18位身份证号码—边界值、等价类

6)输入19位身份证号码—边界值

 

可以看到以上的2)5)测试用例,在等价类设计方法中已经有设计了,1)3)4)6)也有可能是在等价类中设计到,所有边界值得测试用例来自等价类的边界。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/205709.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午5:23
下一篇 2026年3月19日 下午5:23


相关推荐

  • django执行原生sql_mysql语句执行顺序

    django执行原生sql_mysql语句执行顺序前言Django在查询数据时,大多数查询都能使用ORM提供的API方法,但对于一些复杂的查询可能难以使用ORM的API方法实现,因此Django引入了SQL语句的执行方法,有以下三种执行方式ext

    2022年8月7日
    7
  • eclipse代码自动补全[通俗易懂]

    eclipse代码自动补全[通俗易懂]1、点击菜单栏,打开Eclipse->Window->Perferences2、找到Java下的 Editor下的 ContentAssist,点击它3、找到第二个“AutoactivationtriggersforJava:”选项,在其后的文本框中会看到一个“.”存在。这表示:只有输入“.”之后才会有代码提示和自动补全,把该文本框中的“.”换成“abcdefghijklmnopqrstuvwxyz.”即可。…

    2022年5月31日
    39
  • 安硕信息跌0.60%,成交额8399.02万元,后市是否有机会?

    安硕信息跌0.60%,成交额8399.02万元,后市是否有机会?

    2026年3月12日
    3
  • 海龟交易_海龟交易法则的核心

    海龟交易_海龟交易法则的核心入行十多年,见过不少充满灵性的投资人,选股能力非常出色,但是在买卖时机、投入资金多寡上的不足使得他们的盈利水平并不理想。没有别的原因,是缺少一个交易系统。一个完整的交易系统,包括:·市场

    2022年8月2日
    10
  • java json序列化日期类型[通俗易懂]

    java json序列化日期类型[通俗易懂]做接口开发时经常需要给前端返回日期数据,比如生日、创建时间、更新时间等。我们一般是建一个bean,将定义所需要的字段,并和数据库的字段相对应。虽然数据库的字段是日期类型的,但bean的字段定义在String就行了,看下面的测试代码:packagecom.bs.test;importjava.text.SimpleDateFormat;importjava.util.Date;importc

    2025年6月9日
    6
  • JSP动作元素

    JSP动作元素分类<jsp:includepage="content.jsp"></jsp:include>使用<%@include%>

    2021年12月24日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号