Selenium 学习(0.10)——软件测试之测试用例设计方法——分界值分析法

本文详细介绍了边界值分析法的概念,如何在不同场景中应用,如输入验证、网上银行登录测试和找零问题。通过实例展示了如何设计测试用例来覆盖边界值,确保软件功能的正确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        1、什么是边界值分析法

        边界值分析法是一种对输入或输出的边界值进行测试的一种测试方法。这种测试用例设计方法既可以用于黑盒测试也可以用于白盒测试。通常边界值分析法是作为对等价类划分法的补充。

        边界值分析的基本思想

        在最小值 (min)、略高于最小值 (min+) 、正常值 (nom) 、略低于最大值 (max-) 和最大值 (max) 等处取值,而不是选取等价类中的典型值或任意值作为测试数据

        例如,若X (如学生成绩)的输入范围是0-100之间的整数,那么怎样运用边界值设计的基本思想设计测试用例呢?
        设计出的边界值可以为0【min】,1【min+】,50【nom】,99【max-】,100【max】。

        2、边界值分析法的基本原则

        1.如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围的边界的值作为测试输入数据。
        例如,如果程序的规格说明中规定:“重量在5公斤至50公斤范围内的包裹,其邮费的计算公式为......。”请设置边界值。
        (1) 达到范围的边界的值,取5和50;
        (2) 还应取4.99,5.01,49.99,50.01等。
        【那么1的举例中,是否还应该有-1(min-)和101(max+)呢】

        2.如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少1,比最大个数多1的数作为测试数据。
        例如,一个输入文件应包括1~255个记录。请设置边界值
        (1) 取最大个数-255
        (2) 取最小个数-1
        (3) 取比最小个数少1-0
        (4)取比最大个数多1-256

        3.将规则1和2应用于输出条件,即设计测试用例使输出值达到边界值及其左右的值。
        例如,某程序的规格说明要求计算出“每月保险金扣除额为0~1165.25元”。请设置边界值。
        可以取0.00,0.01,1165.24,1165.26等.

        4.如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。
        如新闻分布列表中共有20页,则取第1页和第20页作为测试数据。

        5.如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。
        如javascript中定义一个下标为10的数组arr,那么应该取arr[0]和arr[9]的值作为测试用例。

        6.分析规格说明,找出其它可能的边界条件
        例如特殊边界值,包括空值、空格、零、无效数据等

        常见的边界值

  • 对16位的整数而言-32768和32767是边界
  • 屏幕上光标在最左上、最右下位置
  • 报表的第一行和最后一行
  • 数组元素的第一个和最后一个
  • 循环的第 0 次、第 1次和倒数第 2 次、最后一次

        3、实例分析

        某网上银行的登录界面如图所示,登录名是卡号或者手机号,请运用边界值分析法为其设计测试用例。

        信用卡:16位数字(通常)【15位、16位、17位数字(卡号)】
        储蓄卡:19位数字(通常) 【18位、19位、20位数字(卡号)】
        手机号:11位数字,1开头,第2位为3-9,其余位为0-9,【10位、11位(即130 0000 0000--199 9999 9999之间,min-、min、min+、nom、max-、max、max+)、12位数字(手机号)】

         慕课上讲用ascii字符值来判断,这是一种方法,前提是在输入时检测keyChar【个人以为,不一定正确】

        如果在某信息系统中,假设用户名只能输入A-Za-z的字符,请参考前面的表格,给出用边界值法检查用户名字符合法性的关键测试数据。
        边界条件为96(')、97(a)、98(b)、121(y)、122(z)、123({)、64(@)、65(A)、66(B)、89(Y)、90(Z)、91([)。

        课后自测

        边界值分析法一一找零问题
        假设某商店的商品价格 (P) 都不大于 20 元(且为整数),假设顾客每次付款为 20 元且每次限购一件商品,现有一个软件能在每位顾客购物后给出找零钱的最佳组合(找给顾客的货币张数量最少)。假定此商店的找零货币值只包括 10 元 (N10)、5 元(N5) 和 1元(N1) 3种。
        [问题]请采用边界值分析法为该软件设计测试用例(不考虑 P 为非整数的情况),并填入到表 1中。其中<N1,2>表示 2 张 1 元,若无输出或输出不符合则填入 N/A。

        编号        价格        找零
           1            20          N/A
           2            19         <N1,1>
           3            16         <N1,4>
           4            15         <N5,1>
           5            14         <N5,1><N1,1>
           6            11         <N5,1><N1,4>
           7            10         <N5,2>
           8             9         <N5,2><N1,1>
           9             6         <N5,2><N1,4>
           10           5         <N5,3>
           11           4         <N5,3><N1,1>
           12           1         <N5,3><N1,4>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值