功能性测试Word格式.docx
《功能性测试Word格式.docx》由会员分享,可在线阅读,更多相关《功能性测试Word格式.docx(12页珍藏版)》请在冰豆网上搜索。
根据该程序的规格说明,作等价类的划分,并设计测试方案。
2.题目二:
三角形问题
根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。
“一个程序读入三个整数。
把此三个数值看成是一个三角形的三个边。
这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。
”
3.题目三:
日期问题
用决策表测试法测试以下程序:
该程序有三个输入变量month、day、year(month、day和year均为整数值,并且满足:
1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。
例如,输入为2004年11月29日,则该程序的输出为2004年12月1日。
(1)分析各种输入情况,列出为输入变量month、day、year划分的有效等价类。
(2)分析程序的规格说明,并结合以上等价类划分的情况,给出问题规定的可能采取的操作(即列出所有的动作桩)。
(3)根据
(1)和
(2),画出简化后的决策表。
4.题目四:
找零钱最佳组合
假设商店货品价格(R)皆不大于100元(且为整数),若顾客付款在100元内(P),求找给顾客最少货币个(张)数(货币面值50元10元,5元,1元四种)
实验步骤:
(1)根据功能性测试技术设计测试用例,主要考虑等价类划分和边界值分析测试技术;
(2)根据所学知识确定优化策略(原则:
用最少的用例检测出更多的缺陷、软件测试的充分性与冗余性考虑),设计两套测试用例集;
(3)根据设计的两套测试用例集进行测试;
题目一:
答:
先划分等价类:
有效等价码
无效等价码
地区码
1.空白;
2.三位数;
1.有非数字字符;
2.少于三位数字;
3.多于三位数字;
的三位数字
3.从200到999之间的三位数;
4.有非数字字符;
5.起始位为‘0’;
6.起始位为‘1’;
7.少于三位数字;
8.多余三位数字
4位数字
4.四位数字;
9.有非数字字符;
10.少于四位数字;
11.多余四位数字;
设计测试用例:
方案
内容
输入
预期输出
前缀
后缀
1
空白
从200到999之间的三位数
四位数字
()654——2568
有效
2
三位数字
(568)894——3658
3
有非数字字符
(20A)895——695
无效
4
少于三位数字
(20)896——7895
5
多余三位数字
(5698)785——4562
6
(658)68E——958
7
起始位为‘0’
(326)026——7856
8
.起始位为‘1’
(365)178——589
9
(265)23——5698
10
(458)5698——8974
11
(568)789——698Q
12
少于四位数字
(956)632——562
13
多余四位数字
(956)958——78959
题目二:
输入条件
有效等价类
无效等价类
是否是三角形的三条边
1.A>
0且B>
0且C>
2.且A+B>
C
3.且A+C>
B
4.且B+C>
A
9.A<
=0
10.B<
11.C<
12.A+B<
=C
13.A+C<
=B
14.C+B<
=A
是否是等腰三角形
15.A=B
16.或B=C
17.或A=C
15.A≠B
16.C≠B
17.A≠C
是否是等边三角形
18.A=B且B=C且A=C
18.A≠B
19.C≠B
20.A≠C
序号
【A、B、C】
覆盖等价类
输出
【4,5,6】
一般三角形
【0,2,4】
不能构成三角形
【2,0,4】
【1,8,0】
【2,3,4】
【1,5,2】
【9,1,1】
14
【5,5,6】
等腰三角形
【6,5,5】
【5,6,5】
【3,4,5】
非等腰三角形
【5,5,5】
是等边三角形
【5,6,6】
非等边三角形
题目三:
(1)分析各种输入情况,列出为输入变量month、day、year划分的有效等价类和无效等价类。
等价类
year
month
day
year属于int
1≤month≤12
1≤day≤31
year属于float
month<
day<
year属于负数
month>
day>
31
(2)month变量的有效等价类为:
M1:
{month=4,6,9,11}M2:
{month=1,3,5,7,8,10}
M3:
{month=12}M4:
{month=2}
day变量的有效等价类为:
D1:
{1<
=day<
=26}D2:
{day=27}
D3:
{day=28}D4:
{day=29}
D5:
{day=30}D6:
{day=31}
year变量的有效等价类为:
Y1:
{year是闰年}Y2:
{year不是闰年}
考虑各种有效的输入情况,程序中可能采取的操作有以下七种:
a1:
day+2a2:
day=2a3:
day=1
a4:
month+1a5:
momth=1a6:
year+1
a7:
该日期不存在
(3)分析程序的规格说明,并结合以上等价类划分的情况,给出问题规定的可能采取的操作(即列出所有的动作桩)。
条件桩:
C1:
年份在{Y1,Y2}中之一
C2:
月份在{M1,M2,M3,M4}中之一
C3:
日期在{D1,D2,D3,D4,D5,D6}中之一
动作桩
A1:
日期增2
A2:
日期复位为2号
A3:
日期复位为1号
A4:
月份增1
A5:
月份复位为一月
A6:
年份增1
A7:
条件桩
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
C1:
年份在
Y1
Y2
Y1
C2:
月份在
M2
M1
M4
M3
C3:
日期在
D1
D2
D3
D4
D5
D6
动作桩
A1:
日期增2
√
A2:
日期复位为2号
A3:
日期复位为1号
A4:
月份增1
A5:
月份复位为一月
A6:
A7:
该日期不存在
(3)根据
(1)
(2)(3),画出简化后的决策表,并设计测试用例,做出测试分析。
测试用例
(年-月-日)
实际输出
2003-1-32
2
2004-2-24
2004-2-26
2005-6-31
4
2008-4-16
2008-4-18
2009-6-30
2009-7-2
2010-11-30
2010-12-2
2010-11-31
2003-2-11
2003-2-13
2004-2-28
2005-2-24
2005-