zoukankan      html  css  js  c++  java
  • 黑盒测试法——等价类划分法(修改版)

     黑盒测试法——等价类划分法

     

    实验目的:1.掌握等价类划分的方法

    1. 掌握按等价类方法设计测试用例

    实验内容:

    1、请用等价类划分法为三角形问题划分等价类,并设计相应的测试用例,测试下面三角形问题程序,找出缺陷并改正,给出缺陷报告。

    2、三角形问题:输入3个整数a、b、c,分别作为三角形的3条边,通过程序判断由3条边构成的三角形的类型为等边三角形、等腰三角形、一般三角形或者3条边不构成三角形。

    3、方案设计

    输入三条边a、b、c必须满足以下条件:

    条件1: 1≤a≤100

    条件2: 1≤b≤100

    条件3: 1≤c≤100

    条件4: a<b+c

    条件5: b<a+c

    条件6: c<a+b

    如果输入值a、b、c满足条件1、2、3,则输出下列四种情况之一:

    (1)如果不同时满足条件4、5、6,则程序输出“不构成三角形”。

    (2)如果3条边相等,则程序输出为“等边三角形”。

    (3)如果恰好有2条边相等,则程序输出为“等腰三角形”。

    (4)如果3条边都不相等,则程序输出为“一般三角形”。

    (5)对于不满足条件1、2、3的情况,应给出具体提示:“超出范围”

    (6)对于输入数据不满足要求的,应给出具体提示“请输入3个非零正整数”

    等价类划分

    有效等价类

    号码

    无效等价类

    号码

    输入三个整数

     

     

     

    整数

     

     

     

    1

     a为非整数

           一边为非整数     b为非整数

                            c为非整数

    a,b为非整数

    两边为非整数      b,c为非整数

    a,c为非整数

    三边a,b,c均为非整数

    12

    13

    14

    15

    16

    17

    18

     

     

     

    三个数

     

     

     

    2

    只给a

    只给一边     只给b

    只给c

    只给a,b

    只给两边      只给b,c

    只给a,c

    给出三个以上

    19

    20

    21

    22

    23

    24

    25

     

     

     

    非零数

     

     

     

    3

    a为0

    一边为零     b为0

    c为0

    a,b为0

    两边为零    b,c为0

    a,c为0

    三边a,b,c均为0

    26

    27

    28

    29

    30

    31

    32

     

     

     

    正数

     

     

     

    4

    a<0

    一边<0      b<0

    c<0

    a<0且b<0

    二边<0      a<0且c<0

    b<0且c<0

    三边均<0:a<0且b<0且c<0

    33

    34

    35

    36

    37

    38

    39

    构成一般三角形

     

    a+b>c

     

    b+c>a

     

    a+c>b

     

    5

     

    6

     

    7

    a+b<c

    a+b=c

    b+c<a

    b+c=a

    a+c<b

    a+c=b

    40

    41

    42

    43

    44

    45

    构成等腰三角形

    a=b   且两边之

    b=c    和大于

    a=c   第三边

    8

    9

    10

     

    构成等边三角形

    a=b=c

    11

     

    测试用例编号

    (a,b,c)

    覆盖等价类

    预期输出

    实际输出

    结果

    T01

    (3,4,5)

    1-7

    一般三角形

    一般三角形

    T02

    (3,3,5)

    1-7,8

    等腰三角形

    等腰三角形

    T03

    (3,5,5)

    1-7,9

    等腰三角形

    等腰三角形

    T04

    (3,5,3)

    1-7,10

    等腰三角形

    等腰三角形

    T05

    (1,1,1)

    1-7,11

    等边三角形

    等边三角形

    T06

    (2.3,4,5)

    12

    请输入三个非零正整数

    不构成三角形

    T07

    (2,3.3,4)

    13

    请输入三个非零正整数

    不构成三角形

    T08

    (2,3,4.4)

    14

    请输入三个非零正整数

    不构成三角形

    T09

    (2.2,2.2,3)

    15

    请输入三个非零正整数

    不构成三角形

    T10

    (2,3.3,3.3)

    16

    请输入三个非零正整数

    不构成三角形

    T11

    (2.2,3,2.2)

    17

    请输入三个非零正整数

    不构成三角形

    T12

    (2.2,2.2,2.2)

    18

    请输入三个非零正整数

    不构成三角形

    T13

    (3,,)

    19

    超出范围

    不构成三角形

    T14

    (,3,)

    20

    超出范围

    不构成三角形

    T15

    (,,3)

    21

    超出范围

    不构成三角形

    T16

    (3,3,)

    22

    超出范围

    不构成三角形

    T17

    (,3,3)

    23

    超出范围

    不构成三角形

    T18

    (3  , 3)

    24

    超出范围

    不构成三角形

    T19

    T20

    (0,1,2)

    26

    超出范围

    不构成三角形

    T21

    (1,0,2)

    27

    超出范围

    不构成三角形

    T22

    (1,2,0)

    28

    超出范围

    不构成三角形

    T23

    (0,0,1)

    29

    超出范围

    不构成三角形

    T24

    (0,1,0)

    30

    超出范围

    不构成三角形

    T25

    (1,0,0)

    31

    超出范围

    不构成三角形

    T26

    (0,0,0)

    32

    超出范围

    不构成三角形

    T27

    (2,-1,3)

    33

    超出范围

    不构成三角形

    T28

    (2,1,-3)

    34

    超出范围

    不构成三角形

    T29

    (-2,1,3)

    35

    超出范围

    不构成三角形

    T30

    (-2,-1,3)

    36

    超出范围

    不构成三角形

    T31

    (-2,1,-3)

    37

    超出范围

    不构成三角形

    T32

    (2,-1,-3)

    38

    超出范围

    不构成三角形

    T33

    (-2,-1,-3)

    39

    超出范围

    不构成三角形

    T34

    (3,1,5)

    40

    不构成三角形

    不构成三角形

    T35

    (3,2,5)

    41

    不构成三角形

    不构成三角形

    T36

    (3,1,1)

    42

    不构成三角形

    不构成三角形

    T37

    (3,2,1)

    43

    不构成三角形

    不构成三角形

    T38

    (1,4,2)

    44

    不构成三角形

    不构成三角形

    T39

    (3,4,1)

    45

    不构成三角形

    不构成三角形

    测试用例:

    1、覆盖有效等价类的测试用例

    用例ID

    a        b             c

    预期输出

    覆盖等价类号码

    1

    2

    3

    4

    5

    3       4              5

    4       4              5

    4       5              5

    5       4              5

    4       4              4

    一般三角形

    等腰三角形

    等腰三角形

    等腰三角形

    等边三角形

    1—7

    1—7,8

    1—7,9

    1—7,10

    1—7,11

    2、覆盖无效等价类的测试用例

    用例ID

    a     b      c

    覆盖等价类号码

    预期输出

    用例ID

    a    b     c

    覆盖等

    价类号码

    预期输出

     

    6

    7

    8

    2.5   4      5

    3    4.5     5

    3    4      5.5

    12

    13

    14

     

    无效输入

    无效输入

    无效输入

    23

    24

    25

    26

    0    0     5

    3    0     0

    0    4     0

    0    0     0

    29

    30

    31

    32

    无效输入

    无效输入

    无效输入

    无效输入

    9

    10

    11

    12

    3.5  4.5     5

    3   4.5     5.5

    3.5  4      5.5

    3.5  4.5    5.5

    15

    16

    17

    18

    无效输入

    无效输入

    无效输入

    无效输入

    27

    28

    29

    -3   4     5

    3   -4     5

    3   4     -5

    33

    34

    35

    无效输入

    无效输入

    无效输入

    13

    14

    15

    3

    4

            5

    19

    20

    21

    无效输入

    无效输入

    无效输入

    30

    31

    32

    33

    -3  -4     5

    -3  4     -5

    3  -4     -5

    -3  -4    -5

    36

    37

    38

    39

    无效输入

    无效输入

    无效输入

    无效输入

    16

    17

    18

    19

    3   4

    4      5

    3          5

    3   4     5    6

    22

    23

    24

    25

    无效输入

    无效输入

    无效输入

    无效输入

    34

    35

    36

    37

    3   1     5

    3   2     5

    3   1     1

    3   2     1

    40

    41

    42

    43

    非三角形

    非三角形

    非三角形

    非三角形

    20

    21

    22

    0   4     5

    3   0     5

    3   4     0

    26

    27

    28

    无效输入

    无效输入

    无效输入

    38

    39

    1   4     2

    3   4     1

    44

    45

    非三角形

    非三角形

    缺陷报告:

     

    缺陷编号

    1

    用例编号

    40

    缺陷类型

    代码错误

    严重级别

    严重

    优先级

    优先

    缺陷状态

    New

    测试阶段

    √单元   □ 集成 □ 系统  □ 验收  □ 其它(     )

    可重现性

    √是 □否

    BUG原因

    □需求分析√ 基本设计□ 详细设计□ 设计式样理解□ 编程 □数据库设计

    □ 环境配置□ 其它  (                              )

    缺陷描述

    程序无法正常执行

    预期结果

    程序能运行,并且有运行的结果

    重现步骤

    备注

    打开vc++6.0,运行以下源代码。

    #include "iostream.h"

    void main(){

             int a,b,c;

             cout<<"请输入三角形的三条边(界于1-100之间)"<<endl;

             cin>>a>>b>>c;

             if(a<=1||a>=100)cout<<"a的值超过允许的范围!";

             if(b<=1||b>=100)cout<<"b的值超过允许的范围!";

             if(c<=1||c>=100)cout<<"c的值超过允许的范围!";

             if(a+b>c||a+c>b||b+c>a)cout<<"a,b,c的值不能构成三角形!";

             if(a==b&&b==c)cout<<"是等边三角形!";

             if(a==b||b==c||a==c)cout<<"是等边三角形!";

             if(a<>b&&b<>c&&c<>a)cout<<"一般三角形!";

    }

    发现错误,无法执行。

    以下部分由BUG修改人填写

    缺陷修改描述

    将if语句的“<>”改成“!=”

    测试人

    修正人

    确认人

    修正日期

    年  月   日

                               
  • 相关阅读:
    设置Jmeter默认中文页面
    spring boot controller设置 @Transactional 不回滚的解决办法
    SpringBoot事务注解@Transactional
    spring boot @Transactional事物处理
    Spring事务管理中@Transactional
    @Transactional 注解的使用和注意
    spring的@Transactional注解详细用法
    【Developer Log】ProGuard扰码可执行JAR包
    使用Jprofiler+jmeter进行JVM性能调优
    SQL中如何使用EXISTS替代IN
  • 原文地址:https://www.cnblogs.com/xinjie57/p/9183884.html
Copyright © 2011-2022 走看看