zoukankan      html  css  js  c++  java
  • 边界值分析法实例分析

    实例:找零钱最佳组合

    题目:假设商店货品价格(R)皆不大于100元(且为整数),若顾客付款在100元内(P),求找给顾客的最少货币个(张)数?(货币面值50元,10元,5元,1元四种)

    题目分析:设四种货币的张数分别为n50、n10、n5、n1(均为整数)它们的值即为结果。

    1)输入情况有R>100, 0<R<=100, 0<R, P>100, R<=P<=100, P<R。

    2)输出情况有n50=1||0, 0<= n10 <5, n5=1||0, 0<= n1 <5。

    3)测试实例(R,P)有

    编号 R P 预期输出结果
    1 101 102 非法输入
    2 101 101 非法输入
    3 101 100 非法输入
    4 101 99 非法输入
    5 100 101 非法输入
    6 100 100 n50=0,n10=0,n5=0,n1=0
    7 100 99 非法输入
    8 50 101 非法输入
    9 50 100 n50=1,n10=0,n5=0,n1=0
    10 50 99 n50=0,n10=4,n5=1,n1=4
    11 50 75 n50=0,n10=2,n5=1,n1=0
    12 50 51 n50=0,n10=0,n5=0,n1=1
    13 50 50 n50=0,n10=0,n5=0,n1=0
    14 50 49 非法输入
    15 0 101 非法输入
    16 0 100 非法输入
    17 0 50 非法输入
    18 0 0 非法输入
    19 0 -1 非法输入
    20 -1 101 非法输入
    21 -1 100 非法输入
    22 -1 50 非法输入
    23 -1 -1 非法输入
    24 -1 -2 非法输入

    本例采用的是最坏情况测试,因为两个变量中P变量的边界是随着R变化而变化的,因此在测试中先确定R的取值,然后在此基础上对P的取值进行分析。由于采用最坏情况测试,出现了比较多的非法输入。其实这些非法输入可以根据R的值分成三个等价类非别是R>100, 0<R<=100, R<=0,在此为了展示所有情况,所以列出了所有可能的操作。

  • 相关阅读:
    最大连续子数组问题之一维数组
    敏捷开发读后感
    第一次作业总结
    OS X(10.10) python3.4 matplotlib的安装
    XCODE 6.1.1 配置GLFW
    python装饰器(decorator)
    Android实现Service永久驻留
    软件项目管理第2次作业:豆瓣测评
    软件项目管理第1次作业:四则运算生成器
    软件项目管理第0次作业:如果一定要改变世界的话,为什么不用最酷的方式呢
  • 原文地址:https://www.cnblogs.com/tan1994/p/4356850.html
Copyright © 2011-2022 走看看