软件测试实验报告一:黑盒测试——边界值分析法

实验一: 黑盒测试——边界值分析法

【开发语言及实现平台或实验环境】
C语言
【实验目的】
1.认识黑盒测试方法中边界值分析测试法原理
2.掌握黑盒测试方法中边界值分析测试法过程
【实验内容】
1.三角形问题
问题描述:三角形问题接受三个整数,a、b和c作为输入,用作三角形的边。程序的输出是由这三条边确定的三角形类型:等边三角形、等腰三角形、不等边三角形或非三角形。
作为输入:三角形的三条边必须满足如下条件:
C1:1<=a<=100
C2:1<=b<=100
C3:1<=c<=100
C4:a<b+c
C5:b<a+c
C6:c<a+b
2.NextDate函数
问题描述:NextDate是一个由三个变量(月份、日期和年份)的函数。函数返回输入日期后边的那个日期。
作为输入:变量月份、日期和年都具有整数值,满足以下条件。
C1:1<=月份<=12
C2:1<=日期<=31
C3:1912<=年<=2050

【实验代码】
1.三角形问题
#include<bits/stdc++.h>
using namespace std;
int main(){
int a,b,c;
while(cin>>a>>b>>c){
if(a>=b+c||b>=a+c||c>=a+b){
cout<<“not a triangle”<<endl;
}
else if (a>50||a<1||b>50||b<1||c>50||c<1){
cout<<“out of range!”<<endl;
}
else if(ab&&bc){
cout<<“Equilateral triangle”<<endl;
}
else if(ab||bc||ca){
cout<<“Isosceles triangle”<<endl;
}
else{
cout<<“normal triangle”<<endl;
}
}
return 0;
}
2.NextDay函数
#include<bits/stdc++.h>
#include
#include
using namespace std;
string date;
int n=0;
int main(){
int y,m,d;
while(cin>>m>>d>>y){
if(m<1||m>12||d<1||d>31||y<1912||y>2050){
cout<<“结果:”<<“out of range!”<<endl;
continue;
}
d=(d>30)?1:d+1;
if(d
1){
m=(m>11)?1:m+1;
if(m==1){
y++;
}
}
cout<<m<<"."<<d<<"."<<y<<endl;
}
return 0;
}
【测试案例】
测试一:
边界值测试(4N+1)
序号 a b c 输出结果
1 50 50 1 等腰三角形
2 50 50 2 等腰三角形
3 50 50 99 等腰三角形
4 50 50 100 非三角形
5 50 1 50 等腰三角形
6 50 2 50 等腰三角形
7 50 99 50 等腰三角形
8 50 100 50 非三角形
9 1 50 50 等腰三角形
10 2 50 50 等腰三角形
11 99 50 50 等腰三角形
12 100 50 50 非三角形
13 50 50 50 等边三角形

健壮性测试(6N+1)
序号 a b c 输出结果
1 50 50 1 等腰三角形
2 50 50 2 等腰三角形
3 50 50 99 等腰三角形
4 50 50 100 非三角形
5 50 50 0 Out of range!
6 50 50 101 Out of range!
7 50 1 50 等腰三角形
8 50 2 50 等腰三角形
9 50 99 50 等腰三角形
10 50 100 50 非三角形
11 50 0 50 Out of range!
12 50 101 50 Out of range!
13 1 50 50 等腰三角形
14 2 50 50 等腰三角形
15 99 50 50 等腰三角形
16 100 50 50 非三角形
17 0 50 50 Out of range!
18 101 50 50 Out of range!
19 50 50 50 等边三角形
最坏情况(N^5)
序号 a b c 输出结果
1 50 50 1 等腰三角形
2 50 50 2 等腰三角形
3 50 50 99 等腰三角形
4 50 50 100 非三角形
5 50 50 0 Out of range!
6 50 50 101 Out of range!
7 50 1 50 等腰三角形
8 50 2 50 等腰三角形
9 50 99 50 等腰三角形
10 50 100 50 非三角形
11 50 0 50 Out of range!
12 50 101 50 Out of range!
13 1 50 50 等腰三角形
14 2 50 50 等腰三角形
15 99 50 50 等腰三角形
16 100 50 50 非三角形
17 0 50 50 Out of range!
18 101 50 50 Out of range!
19 50 50 50 等边三角形
20 1 1 100 非三角形
21 1 4 79 非三角形
22 50 3 100 非三角形
23 6 99 99 等腰三角形
24 47 100 99 不等边三角形
50 15 16 99 非三角形
最坏情况健壮性(7^N):
序号 a b c 输出结果
1 50 50 1 等腰三角形
2 50 50 2 等腰三角形
3 50 50 99 等腰三角形
4 50 50 100 非三角形
5 50 50 0 Out of range!
6 50 50 101 Out of range!
7 50 1 50 等腰三角形
8 50 2 50 等腰三角形
9 50 99 50 等腰三角形
10 50 100 50 非三角形
11 50 0 50 Out of range!
12 50 101 50 Out of range!
13 1 50 50 等腰三角形
14 2 50 50 等腰三角形
15 99 50 50 等腰三角形
16 100 50 50 非三角形
17 0 50 50 Out of range!
18 101 50 50 Out of range!
19 50 50 50 等边三角形
20 1 1 100 非三角形
21 1 4 79 非三角形
22 50 3 100 非三角形
23 6 99 99 等腰三角形
24 47 100 99 不等边三角形
50 15 16 99 非三角形
26 0 101 101 Out of range!
27 99 99 99 等边三角形

测试二:
边界性测试(4N+1):
序号 m d y 预期结果
1 6 15 1912 6.16.1912
2 6 15 1913 6.16.1913
3 6 15 2000 6.16.2000
4 6 15 2001 6.16.2001
5 6 1 2001 6.2.2001
6 6 2 2001 6.3.2001
7 6 30 2001 6.31.2001
8 6 31 2001 7.1.2001
9 1 15 2001 1.16.2001
10 2 15 2001 2.16.2001
11 11 15 2001 11.16.2001
12 12 15 2001 12.16.2001
13 6 15 2001 6.16.2001
健壮性测试(6N+1):
序号 m d y 预期结果
1 6 15 1912 6.16.1912
2 6 15 1913 6.16.1913
3 6 15 2000 6.16.2000
4 6 15 2001 6.16.2001
5 6 1 2001 6.2.2001
6 6 2 2001 6.3.2001
7 6 30 2001 6.31.2001
8 6 31 2001 7.1.2001
9 1 15 2001 1.16.2001
10 2 15 2001 2.16.2001
11 11 15 2001 11.16.2001
12 12 15 2001 12.16.2001
13 6 15 2001 6.16.2001
14 0 15 2001 out of range!
15 13 15 2001 out of range!
16 6 15 1911 out of range!
17 6 15 2050 out of range!
18 6 0 2001 out of range!
19 6 32 2001 out of range!
最坏情况(N^5):
序号 m d y 预期结果
1 6 15 1912 6.16.1912
2 6 15 1913 6.16.1913
3 6 15 2000 6.16.2000
4 6 15 2001 6.16.2001
5 6 1 2001 6.2.2001
6 6 2 2001 6.3.2001
7 6 30 2001 6.31.2001
8 6 31 2001 7.1.2001
9 1 15 2001 1.16.2001
10 2 15 2001 2.16.2001
11 11 15 2001 11.16.2001
12 12 15 2001 12.16.2001
13 6 15 2001 6.16.2001
14 0 15 2001 out of range!
15 13 15 2001 out of range!
16 6 15 1911 out of range!
17 6 15 2050 out of range!
18 6 0 2001 out of range!
19 6 32 2001 out of range!
20 2 31 1988 3.1.1988
21 4 14 1976 4.15.1976
22 13 6 2005 out of range!
23 4 17 1998 4.18.1998
最坏情况健壮性(N^7):
序号 m d y 预期结果
1 6 15 1912 6.16.1912
2 6 15 1913 6.16.1913
3 6 15 2000 6.16.2000
4 6 15 2001 6.16.2001
5 6 1 2001 6.2.2001
6 6 2 2001 6.3.2001
7 6 30 2001 6.31.2001
8 6 31 2001 7.1.2001
9 1 15 2001 1.16.2001
10 2 15 2001 2.16.2001
11 11 15 2001 11.16.2001
12 12 15 2001 12.16.2001
13 6 15 2001 6.16.2001
14 0 15 2001 out of range!
15 13 15 2001 out of range!
16 6 15 1911 out of range!
17 6 15 2050 out of range!
18 6 0 2001 out of range!
19 6 32 2001 out of range!
20 2 31 1988 3.1.1988
21 4 14 1976 4.15.1976
22 13 6 2005 out of range!
23 4 17 1998 4.18.1998
24 0 15 1999 out of range!
50 13 0 2004 out of range!
26 11 20 2010 11.21.2010
27 13 24 2023 out of range!

【测试结果及分析】
实验1:

本实验的条件较为完备,范围的设定合理,不会出现错误。
实验2:

本实验的范围设定有问题,如:6.30.2001的后一天应该是7.1.2001而不是6.31.2001.所以在设定数据范围时我们应该考虑现实情况。
【实验总结】
1.在具体进行测试时,边界性测试和健壮性测试都有不同的作用,随着测试复杂程度的提升,程序出错的可能性也就越小。
2.在设计数据范围时,要结合现实条件设计,比如第二个实验中没有考虑月份中的大小月以及闰年,在实际使用中就可能出现问题

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值