软件测试-黑盒测试

实验2、黑盒测试方法:等价类划分法+边界值分析方法

一、实验目的

  1. 掌握等价类、有效等价类、无效等价类、边界值等概念。
  2. 掌握边界值分析法、等价类划分法的测试用例设计方法。
  3. 能够将这两种方法结合起来,灵活运用

二、实验任务

以下三个任务、至少完成两个

1、对三角问题综合运用边界值分析方法等价类划分方法设计测试用例。

三角形问题:void Triangle (int a, int b, int c)函数规定输入三个整数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型(等边三角形、等腰三角形、一般三角形、构不成三角形),并在屏幕上输出1<=a,b,c<=200。

实验步骤:

  • 划分等价类,得到等价类表。等价类表格式如下:

输入变量

有效等价类

无效等价类

a,b,c

<a,b,c>:边为a,b,c的一般三角形

a输出超出预定值

a,b,c

<a,b,c>:边为a,b,c的等边三角形

b输出超出预定值

a,b,c

<a,b,c>:边为a,b,c的等腰三角形

c输出超出预定值

a,b,c

<a,b,c>:边为a,b,c不能组成三角形

  • 综合运用这两种方法设测试用例,得到测试用例表:

边界值

a

b

c

[1,200]

[1,200]

[1,200]

[1,200]

  • 综合运用这两种方法设测试用例,得到测试用例表:

测试用例ID

a

b

c

预期输出

T1

5

5

5

等边三角形、等腰三角形

T2

2

2

3

等腰三角形

T3

3

6

5

一般三角形

T4

201

0

50

不构成三角形

T5

-1

30

-30

不构成三角形

T6

100

100

100

等边三角形

T7

20

18

29

一般三角形

T8

70

120

70

等腰三角形

  • 根据上述测试用例表,能否进行优化,获得最小测试用例集合:

测试用例ID

a

b

c

预期输出

T1

5

5

5

等边三角形

T2

2

2

3

等腰三角形

T3

3

6

5

一般三角形

T4

201

0

50

不构成三角形

T5

100

100

100

等边三角形

测试过程

这里只对一组用例进行了测试,如果需要可根据下面提供的测试代码进行其他测试用例的测试。

测试代码:

#include <stdio.h>

void triangle( int a, int b, int c ); // 函数声明 --- 作用域

int main(void)

{

int x,y,z;

printf("please input (length):\n");

printf("x:");

scanf("%d",&x);

printf("y:");

scanf("%d",&y);

printf("z:");

scanf("%d",&z);

triangle( x,y,z );//判断三角形类型

}

void triangle( int a, int b, int c )

{

int temp;



if( a > b )

{//如果a比较b大,就相互转换

temp = a;

a = b;

b = temp;

}

if( a > c )

{//如果a比较c大,就相互调换

temp = a;

a = c;

c = temp;

}

if( b > c )

{//如果b比较c大,就相互调换

temp = b;

b = c;

c = temp;

}

 

if( a+b <= c )

{

printf("不是三角形!!\n");

return ;

}

else

{

if( a == b )

{

if( a != c )

printf("等腰三角\n");

else

printf("等边三角\n");

}

else

{

printf("是个三角形\n");

}

}

}

2、对于找零钱最佳组合问题运用边界值分析法设计测试用例。

实验步骤:

  • 分析边界值。

付款={-1,0,49,51,99,100}

总价={-1,0,50,55,100,101}

  • 运用健壮性边界条件法设计测试用例,得到测试用例表(测试用例表格式同实验1)。

测试用例ID

付款

总价

预期输出

T1

-1

0

不符合标准

T2

0

0

不用找零

T3

0

50

不能购买

T4

33

-1

不符合标准

T5

99

0

应找零钱99元

T6

100

51

应找零钱49元

T7

49

100

能购买

T8

100

101

不用找零

T9

66

55

应找零钱11

T10

51

-1

不符合标准

测试过程

这里只对一组用例进行了测试,如果需要可根据下面提供的测试代码进行其他测试用例的测试。

  • 执行测试,填写软件缺陷报告。

简单软件缺陷报告格式如下:

测试模块:

找零钱

开 发 者:

测 试 员:

测试日期:

2024.3.29

软件缺陷列表

缺陷ID

缺陷详细信息

BUG1

BUG2

BUG3

BUG4

测试代码:

#include <stdio.h>

#include<math.h>

int main()

{

    double a,b;

    printf("请输入付款金额:");

    scanf("%lf",&a);

    if(a<0||a>100){

     printf("不符合标准。\n");

     return 0;

}

printf("请输入物品价格:");

scanf("%lf",&b);

if(b<0||b>100){

printf("不符合标准。\n");

return 0;

}

printf("您的余额为:%lf\n",a-b);

if(a-b>0){

printf("应找零钱%lf\n",a-b);

}else if(a==a-b||a==b){

printf("不用找零\n");

}else{

printf("您付的金额不足以购买该产品。\n");

}

return 0;

}

  • 6
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值