用例设计实训报告
- 基本信息
名称: |
黑盒测试与白盒测试用例设计 |
时间: |
4月20日 |
测试人: | |
学号: | |
年级专业班级: |
22级软件工程专业1班 |
目标: |
通过实训对比黑盒测试与白盒测试的核心原理差异,建立测试策略选择的理论基础。 实践黑盒测试的等价类划分、边界值分析、判定表等设计方法,以及白盒测试的语句覆盖、路径覆盖、条件组合覆盖等技术,强化不同场景下的用例设计能力。 提高测试方案优化意识,强化测试报告编写和问题沟通能力。 |
- 测试内容
- 试对象说明
现有三角形类型判断程序,要求输入3个介于1-100之间的正整数a、b、c作为三角形的三条边,判断这3个数构成的是一般三角形、等边三角形、等腰三角形、直角三角形,还是无法构成三角形。
-
- 黑盒测试用例设计
- 设计思路:
- 等价类划分 :将输入划分为有效等价类和无效等价类。
- 有效等价类:满足三角形条件的三边组合(如一般三角形、等边三角形、 等腰三角形、直角三角形)。
- 无效等价类:不满足三角形条件的三边组合(如两边之和小于或等于第三边)。
- 边界值分析 :针对输入范围(1-100)的边界值进行测试,包括最小值(1)、最大值(100)以及接近边界值的情况。
- 判定表 :基于输入三边的关系(如两边之和是否大于第三边),生成不同的判定条件,确保覆盖所有可能的逻辑分支。
- 错误推测法 :根据经验和直觉,推测程序中可能出现的错误场景,设计针对性的测试用例。例如:输入包含负数或零的情况。输入非数值数据(如字母、特殊字符)。输入超过指定范围的值(如101或0)。
- 等价类划分 :将输入划分为有效等价类和无效等价类。
- 测试用例列表
- 设计思路:
- 黑盒测试用例设计
编号 |
标题 |
所属模块 |
描述 |
输入 |
预期输出 |
优先级 |
TC-001 |
2个整数 |
三角形判断 |
只输入2个正整数 |
1,2 |
无法判断 |
高 |
TC-002 |
3个整数 |
三角形判断 |
输入3个正整数 |
4,5,6 |
一般三角形 |
高 |
TC-003 |
等边三角形 |
三角形判断 |
输入3个相等的正整数 |
6,6,6 |
等边三角形 |
高 |
TC-004 |
等腰三角形 |
三角形判断 |
输入2个相等的正整数和1个不同的正整数 |
1,2,2 |
等腰三角形 |
高 |
TC-005 |
直角三角形 |
三角形判断 |
输入满足勾股定理的3个正整数 |
3,4,5 |
直角三角形 |
高 |
TC-006 |
无法构成三角形 |
三角形判断 |
输入不满足三角形条件的3个正整数 |
1,2,3 |
无法构成三角形 |
高 |
TC-007 |
边界值 |
三角形判断 |
输入最小值1和最大值100 |
1,100,100 |
等腰三角形 |
中 |
TC-008 |
超出范围 |
三角形判断 |
输入超出范围的值 |
0,6,6 |
输入无效 |
中 |
TC-009 |
非整数输入 |
三角形判断 |
输入包含小数的值 |
3.5,4,5 |
输入无效 |
中 |
TC-010 |
负数输入 |
三角形判断 |
输入包含负数的值 |
-1,2,2 |
输入无效 |
中 |
TC-011 |
字母输入 |
三角形判断 |
输入包含字母的值 |
a,1,2 |
输入无效 |
中 |
TC-012 |
特殊字符输入 |
三角形判断 |
输入包含特殊字符的值 |
@,1,2 |
输入无效 |
中 |
TC-013 |
空输入 |
三角形判断 |
不输入任何值 |
空 |
输入无效 |
中 |
-
- 白盒测试用例设计
- 设计思路:
- 语句覆盖 :确保程序中的每一条语句至少被执行一次。
- 路径覆盖 :设计用例覆盖程序中所有可能的执行路径,包括正常路径和异常路径。
- 条件组合覆盖 :覆盖所有条件的真假组合,确保逻辑判断的全面性。
- 重点场景覆盖 :针对关键逻辑(如三角形类型的判断条件),设计针对性的测试用例,验证其正确性。
- 测试用例列表
- 设计思路:
- 白盒测试用例设计
编号 |
标题 |
所属模块 |
描述 |
输入 |
预期输出 |
优先级 |
TC-001 |
一般三角形 |
三角形判断 |
输入满足一般三角形条件的3个数 |
4,5,6 |
一般三角形 |
高 |
TC-002 |
等边三角形 |
三角形判断 |
输入3个完全相等的正整数 |
6,6,6 |
等边三角形 |
高 |
TC-003 |
等腰三角形 |
三角形判断 |
输入2个相等且满足三角形条件的正整数 |
6,6,7 |
等腰三角形 |
高 |
TC-004 |
直角三角形 |
三角形判断 |
输入满足勾股定理的3个数 |
3,4,5 |
直角三角形 |
高 |
TC-005 |
无法构成三角形 |
三角形判断 |
输入不满足三角形条件的3个正整数 |
1,2,3 |
无法构成三角形 |
高 |
TC-006 |
边界值测试 |
三角形判断 |
输入接近构成三角形条件边界的值 |
1,1,2 |
无法构成三角形 |
中 |
TC-007 |
最小值测试 |
三角形判断 |
输入最小值1 |
1,1,1 |
等边三角形 |
中 |
TC-008 |
最大值测试 |
三角形判断 |
输入最大值100 |
100,100,100 |
等边三角形 |
中 |
TC-009 |
超出范围测试 |
三角形判断 |
输入超出范围的值 |
0,50,50 |
输入无效 |
中 |
TC-010 |
异常输入测试 |
三角形判断 |
输入非整数值 |
3.5,4,5 |
输入无效 |
中 |
- 测试分析
- 黑盒测试与白盒测试对比
- 黑盒测试 :
- 优点:关注功能需求,无需了解内部实现细节;易于发现需求相关的问题。
- 缺点:难以覆盖所有逻辑分支,可能遗漏代码中的潜在缺陷。
- 白盒测试 :
- 优点:全面覆盖代码逻辑,能够发现隐藏的错误。
- 缺点:需要深入了解代码实现,测试成本较高。
- 覆盖率分析
- 黑盒测试 :通过等价类划分和边界值分析,覆盖了大部分功能需求,但对复杂逻辑分支的覆盖不足。
- 白盒测试 :通过语句覆盖、路径覆盖和条件组合覆盖,确保了代码逻辑的全面验证。
- 测试优化建议
- 结合黑盒测试和白盒测试的优势,采用混合测试策略。
- 增加自动化测试工具的应用,提升测试效率。
- 定期回顾测试用例,根据实际需求更新和完善。
- 黑盒测试 :