zoukankan      html  css  js  c++  java
  • 黑盒测试方法案例

    1.根据下面给出的规格说明,利用等价类进行测试用例的设计。

         一个程序读入3个正整数,把这三个数值看作一个三角形的3条边的长度值。这个程序要打印出信息,说明这个三角形是普通的、是等腰的、还是等边的。

    a.找出输入输出条件,列出有效等价类和无效等价类并编号;

    输入 有效的等价类 无效等价类
    3条边      3个正整数(1) <3个数(2),>3个数(3),非正整数(4),非数字(5)
    普通三角形          a+b>c且a+c>b且b+c>a (6) a+b<c(7),a+c<b(8), b+c<a(9)
    等腰三角形 a=c(10),a=b(11), b=c(12)  
    等边三角形 a=b=c(13)  

    b.设计用例

    编号 覆盖等价类 a b c 预期输出
    1 1,6 3 4 5 普通三角形
    2 1,6,10 3 4 3 等腰三角形
    3 1,6,11 3 3 4 等腰三角形
    4 1,6,12 4 3 3 等腰三角形
    5 1,6,13 3 3 3 等边三角形
    6 2 3 3   非三角形
    7 3 3 3 3,3 非三角形
    8 4 -1 3 3 非三角形
    9 5 a a a 非三角形
    10 7 3 4 8 非三角形
    11 8 3 8 4 非三角形
    12 9 8 3 4 非三角形

    以上是最少的测试用例组合,如果时间、条件允许可适当补充用例;

    2.正对上题, 要求三角形每边边长的取范围值设值为(1, 100],利用边界值进行测试用例的设计。

    a.找出上点:1,100  离点:2,101 内点:55

    b.等价类的基础上补充边界用例

    用例编号 a b c 预期输出
    1 55 55 1 等腰三角形
    2 50 50 100 非三角形
    3 55 55 2 等腰三角形
    4 55 55 101 等腰三角形
    5 55 55 55 等边三角形
    6 1 55 55 等腰三角形
    7 100 50 50 非三角形
    8 2 55 55 等腰三角形
    9 101 55 55 等腰三角形
    10 55 1 55 等腰三角形
    11 50 100 50 非三角形
    12 55 2 55 等腰三角形
    13 55 101 55 等腰三角形

    3.判定表方法设计上述用例。

     a.找出条件桩:是否构成三角形(能/不能);三边关系(a=b/a=c/b=c);

       动作桩:非三角形,等腰三角形、等边三角形、普通三角形;

     b.画判定表;

    条件桩 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
    构成三角形 Y Y Y Y Y Y Y Y N N N N N N N N
    a=b Y Y Y Y N N N N X Y Y Y N N N N
    b=c Y Y N N Y Y N N X Y N N Y Y N N
    a=c Y N Y N Y N Y N X N Y N Y N Y N
    动作桩 等边三角形 不存在 不存在 等腰三角形 不存在 等腰三角形 等腰三角形 普通三角形 非三角形 非三角形 非三角形 非三角形 非三角形 非三角形 非三角形 非三角形

    c.合并化简

    根据题意,不能构成三角形就不需要再考虑三边关系,所以不能构成三角形的列可以合并为一条,上表标红部分可以直接删除,逻辑不存在的2,3,5条也可以删除,形成下图最终的判定表,最后可以参考等价类和边界值来进行最终的用例设计;

    条件桩 1 2 3 4 5 6
    构成三角形 Y Y Y Y Y N
    a=b Y Y N N N X
    b=c Y N Y N N X
    a=c Y N N Y N X
    动作桩 等边三角形 等腰三角形 等腰三角形 等腰三角形 普通三角形 非三角形

    4.自动售货机的部分需求规格说明如下:

          一个处理单价为5角钱的饮料的自动售货机。其规格说明如下:若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。”请使用因果图法设计相应的测试用例。

    a. 原因(输入):有零钱  投5角  投1元  橙汁  啤酒

    b. 找结果(输出):出橙汁 出啤酒  零钱找完  退1元 退5角

    c. 画因果图:

    说明:左列原因,右列结果;11表示按下按钮,12表示该找5角,13表示可找5角,14表示钱付清; 

     d.生成判定表

    条件桩 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
    有零钱找 Y Y Y Y Y Y Y Y N N N N N N N N
    投一元 Y Y Y N N N N N Y Y Y N N N N N
    投五角 N N N Y Y Y N N N N N Y Y Y N N
    押橙汁 Y N N Y N N Y N Y N N Y N N Y N
    押啤酒 N Y N N Y N N Y N Y N N Y N N Y
    动作桩 退5角,出橙汁 退5角,出啤酒 无反应 出橙汁 出啤酒 无反应 无反应 无反应 红灯亮,退一元 红灯亮,退一元 无反应 出橙汁 出啤酒 无反应 无反应 无反应

    5.根据下面场景,利用正交实验法设计用例。用户登录系统,三个登录条件:用户名、密码、验证码,考虑填写或不填写。

    a.找因子:用户名,密码,验证码

    b.找因子状态:填,不填

    c.3因子2状态,套用正交表

    d.生成正交表

    测试用例编号

    用户名

    密码

    验证码

    1

    2

    不填

    不填

    3

    不填

    不填

    4

    不填

    不填

    PS:1.可以根据SRS, 对生成后的正交表进行增删操作, 删除无意义的用例,添加需要的用例;

          2.若得到的因子和状态数,找不到对应的正交表,则合并删除,选取最为接近的正交表,例如:5因子2状态,没有该正交表,可以用7因子2状态代替。

    6.案例:一个缺陷的一生
         测试人员提交新问题单,测试经理审核问题单,如果不是问题则作为非问题关闭,如果重复则作为重复问题关闭。否则置为打开状态;
          开发人员分析打开状态的问题单,如果接受则进行修改,否则应与测试人员协商,在问题提交人统一的情况下可退回给测试人员作为非问题关闭;
          对于开发人员拒绝修改但测试人员无法认同的情况,该问题单需交CCB评审,根据评审结果,如果确认要修改则进入修改状态;
         如果不是问题则作为非问题关闭,如果是问题但暂时无法解决则挂起。挂起的问题单到达指定修改期限时会再次进入打开状态。修改后的问题单需由测试人员进行回归测试,如果回归通过则关闭问题单,如果回归不通过则重新进入打开状态。 

    根据上述案例过程,画状态迁移图。


    a.找状态:打开,关闭,修复,重新打开,审核,关闭,重复,延迟,丢弃

    b.画状态迁移图

    7.根据下图分析流程,找出所有路径;

    根据上图,共可以找到8条路径:

    a.基本流→结束用例

    b.基本流→备选流1→结束用例

    c.基本流→备选流1→备选流2→结束用例

    d.基本流→备选流3→备选流1→备选流2→结束用例

    e.基本流→备选流3→结束用例

    f.基本流→备选流4→结束用例

    g.基本流→备选流3→备选流4→结束用例

    h.基本流→备选流4→结束用例

  • 相关阅读:
    计算机三级数据库-指导
    spring导入约束
    hibernater获取session时org.hibernate.service.spi.ServiceException错误
    springxml配置注入报错
    右键复制类的完整路径
    关于实体里的toString方法
    idea创建web项目环境
    框架快速找类
    如何在scdn博客里搜索自己博客文章
    永久消除自动产生的QQPCMgr
  • 原文地址:https://www.cnblogs.com/Carolinee/p/5546594.html
Copyright © 2011-2022 走看看