软件测试-测试用例的经典例子

本文通过具体的例子探讨了软件测试中测试用例的设计,包括覆盖有效等价类、边界值分析法和错误推测法。针对不同场景,如NextDate函数的边界测试,以及线性表排序程序的错误推测,提供了详细的测试策略和步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、等价类划分
问:某程序规定:"输入三个整数 a、 b、 c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时,分别作计算 … "。用等价类划分方法为该程序进行测试用例设计。(三角形问题的复杂之处在于输入与输出之间的关系比较复杂。)
解:
 分析题目中给出和隐含的对输入条件的要求:
(1)整数
(2)三个数
(3)非零数
(4)正数
(5)两边之和大于第三边
(6)等腰
(7)等边
   如果 a、 b 、 c满足条件( 1 ) ~ ( 4 ),则输出下列四种情况之一:
   1)如果不满足条件(5),则程序输出为 " 非三角形 " 。
   2)如果三条边相等即满足条件(7),则程序输出为 " 等边三角形 " 。
   3)如果只有两条边相等、即满足条件(6),则程序输出为 " 等腰三角形 " 。
   4)如果三条边都不相等,则程序输出为 " 一般三角形 " 。
   列出等价类表并编号

   覆盖有效等价类的测试用例
    a      b      c              覆盖等价类号码
    3      4      5             (1)--(7)
    4      4      5             (1)--(7),(8)
    4      5      5             (1)--(7),(9)   
    5      4      5             (1)--(7),(10)
    4      4      4             (1)--(7),(11)
   覆盖无效等价类的测试用例:

       二、边界值分析法
NextDate函数的边界值分析测试用例
在NextDate函数中,隐含规定了变量mouth和变量day的取值范围为1≤mouth≤12和1≤day≤31,并设定变量year的取值范围为1912≤year≤2050 。

mouth
d a y
y e a r
预期输出
T e st1
T e st2
T e st3
T e st4
T e st5
T e st6
T e st7
6
6
6
6
6
6
6
15
15
15
15
15
15
15
1911
1912
1913
1975
2049
2050
2051
1911.6.16
1912.6.16
1913.6.16
1975.6.16
2049.6.16
2050.6.16
2051.6.16
Test8
Test9
Test10
Test11
Test12
Test13
6
6
6
6
6
6
-1
1
2
30
31
32
2001
2001
2001
2001
2001
2001
d a y超出[1…31]
2001.6.2
2001.6.3
2001.7.1
输入日期超界
d a y超出[1…31]
Test14
Test15
Test16
Test17
Test18
Test19
-1
1
2
11
12
13
15
15
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值