基于输入域的测试实验报告——三角形程序


#一、实验目的

  • (1)巩固基于输入域的测试技术,能熟练、灵活地应用多种基于输入域的测试方法设计测试用例;
  • (2)学习测试用例的书写。

#二、实验内容

##判断三角形类型

1
输入三个整数a、b、c,分别作为三角形的三条边,通过程序判断这三条边是否能构成三角形?如果能构成三角形,则判断三角形的类型(等边三角形、等腰三角形、一般三角形)。要求输入三个整数a、b、c,必须满足以下条件:1≤a≤200;1≤b≤200;1≤c≤200。

要求:

  • (1) 尝试使用随机测试的方法,随机生成5~8个测试用例;
  • (2) 分析程序输入域,结合程序输出结果,进行等价类划分,并给出详细测试用例;
  • (3) 结合(2)所划分的等价类,进行边界值分析(适当考虑程序的健壮性),并给出具体的测试用例;
  • (4) 利用因果图描述程序各输入、输出分量之间的因果关系以及约束;
  • (5) 采用决策表的方法,为程序设计完备且无冗余的测试用例
  • (6) 通过你的测试,请简单比较、总结你所使用的不同测试方法的特点。

#三、实验要求

  • (1)根据题目要求编写测试用例
  • (2)撰写实验报告
  • (3)实验报告命名规则:学号后两位+姓名

#四、实验报告

##(1)随机测试
![10.png-58.8kB][1]


##(2)等价类划分

1
2
3
①分析程序的规格说明,列出输入变量a、 b、 c的有效等价类、无效等价类; 
②给出等价类表(每个等价类编号)
③覆盖等价类表中的所有等价类,编写测试用例

###2.1.等价类划分

####2.1.1.给定的输入条件要求

1
2
3
4
数量要求:3个数
大小范围:1-200之间
类型要求:整数
功能要求:a+b>c;a+c>b;c+b>a

####2.1.2.给出等价类表
![01.png-37.7kB][2]

####2.1.3设计测试用例
覆盖上表的等价类,如下表所示:

#####2.1.3.1无效等价类
![02.png-181.6kB][3]

#####2.1.3.2有效等价类
![03.PNG-25.4kB][4]


##(3)边界值分析

1
2
①根据(2)中所获得的等价类,分析输入变量的边界,给出边界测试用例
②考虑程序的健壮性,适当补充健壮性测试用例

###3.1边界值分析测试用例表
![04.png-58.2kB][5]


##(4)因果图

1
2
3
①分析程序的规格说明,列出原因和结果
②标明原因间、结果间的约束
③适当增加中间节点,绘制因果图

###4.1.原因和结果
![05.png-21.8kB][6]

###4.2.标明原因间、结果间的约束
原因间无明显约束,结果间,等腰与等边之间有着M约束关系。

###4.3.绘制因果图

1
2
3
4
编号为 10, 11, 12 的中间节点是导出结果的进一步原因
10:可以构成三角形
11:任意两条边相等
12:三条边两两相等

![09.png-156.3kB][7]


##(5)决策表

1
2
3
4
①分析程序的规格说明,列出条件桩、动作桩
②分析条件项、动作项之间的约束,剔除无效或无意义的条件项
③给出决策表(简化)
④根据决策表,给出详细测试用例

###5.1列出所有条件桩和动作桩
![06.png-16.6kB][8]

###5.2计算规则数
共6个条件,每个条件取值$y/n$,因此有$2^6=64$条规则

###5.3填入条件项,填入动作项
由于条件数目太多,把互斥的条件作简化

###5.4化简合并后的决策表
![07.png-26.8kB][9]

###5.5依照决策表生成测试用例
![08.png-25.3kB][10]


##(6) 通过你的测试,请简单比较、总结你所使用的不同测试方法的特点。

  • ①随机测试:随机选取用例,检测正确性
  • ②等价类划分:等价类划分就是解决如何选择适当的数据子集来代表个数据集的问题,通过降低测试的数目去实现“合理的”覆盖,覆盖了更多的可能数据,以发现更多的软件缺陷。
  • ③边界值分析;边界分析是指对输入或输出的边界值进行的一种方法。所说的边界值是指输入等价类和输出等价类的边界值。经验证明大量的程序错误发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。
  • ④因果图;从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出或程序状态的改变),可以通过因果图转换为判定表。其将质量问题与原因之间的关系表示出来,是分析影响产品质量的诸因素之间关系的一种工具。
  • ⑤决策表;决策表又称判断表,是一种呈表格状的图形工具,适用于描述处理判断条件较多,各条件又相互组合、有多种决策方案的情况。

完成时间:2015年11月26日
[1]: http://static.zybuluo.com/rg070836rg/ko02lafsgm5ineholwwjusew/10.png
[2]: http://static.zybuluo.com/rg070836rg/8ncpbj67rtivxpub23fhs7ni/01.png
[3]: http://static.zybuluo.com/rg070836rg/3y4dksvyxoiw1mpqwoh1vaje/02.png
[4]: http://static.zybuluo.com/rg070836rg/d9m30d08z7ett21t4op7ekn2/03.PNG
[5]: http://static.zybuluo.com/rg070836rg/2zueg610bjqvpk6qvhgx8qgh/04.png
[6]: http://static.zybuluo.com/rg070836rg/pouij8ygjb4ggpvudt16hyu1/05.png
[7]: http://static.zybuluo.com/rg070836rg/l48c6o04t8xxdr8cnnjjqfkw/09.png
[8]: http://static.zybuluo.com/rg070836rg/x7kczecuywgmo1etlca1u9af/06.png
[9]: http://static.zybuluo.com/rg070836rg/90hz8zlygvuwhs70c884mwzl/07.png
[10]: http://static.zybuluo.com/rg070836rg/zkfs4dzfxwaorrfxks6e4sv7/08.png