闰年判断测试
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件0911 潘倩 0902343141
闰年判断测试
一、 功能定义
设计测试功能能够判断1800年至2050年的闰年。 二、 测试流程分析
1. 基本描述
此测试共有三个条件,通过这三个条件能充分判断年份是否为闰年,条件如下:
● T1:y%400==0 ● T2:y%4==0 ● T3:y%100==0 2. 流程图
该流程图包含四条路径: ◆ L13:P 1→P3 ◆ L14:P1→P4 ◆ L2:P2
输入年份:y
y%4==0 AND y%100!=0
y%400==0
F
输出y 是闰年
T
T 输出y 不是闰
年
F 结束
p1
p2
p3
p4
开始
三、 逻辑覆盖
1. 语句覆盖
从流程图来看,可从L2路径直接执行结果,则基本的逻辑判定条件满足T1为真即可。
根据以上分析,设计得到的测试用例如表所示。
表一语句覆盖的测试用例(第一次尝试)ID 输入预期输出通过路径语句覆盖
y
LC-01 2000 是闰年L2100%对于测试用例LC-01,当y对400求余时,结果为0。则测试肯定为闰年。但此测试具有一定的限定性,不能充分体现语句覆盖的准确性。
表二语句覆盖的测试用例(第二次尝试)ID 输入预期输出通过路径语句覆盖
y
LC-02 1889 不是闰年L13 100%
LC-03 1980 是闰年L14 100%
LC-04 2000 是闰年L2 100%
此次测试,测试过程加多,考虑到了多种情况,但可能还有其它情况没想到,因为不是每一个年份都测试了一遍,所以此种逻辑覆盖还需要加强。
2.判定覆盖
判定覆盖要求测试用例的应用程序中每个判定节点取得每种可能的结果至少一次。从本例来讲,要满足判定覆盖,需执行路径L14、L13.。
表三判定覆盖的测试用例
ID 输入预期输出通过路径判定覆盖
y
LC-05 1947 不是闰年L13 100%
LC-06 1800 是闰年L14 100%
判定覆盖比语句覆盖增加了一倍的路径,因此具有更强的测试能力。但判定覆盖并未深入测试符合判定表达式的细节,并未测试到每个简单逻辑判定条件的正确性。
3.条件覆盖
条件覆盖要求设计测试用例时保证程序中每个复合判定表达式的每个简单判定条件的取真和取假情况至少一次。
表四条件覆盖的测试用例
ID 输入预期输出通过路径条件覆盖
y
LC-07 1947 不是闰年L13 100%
LC-08 1800 是闰年L14 100%
LC-09 2005 不是闰年L13 100%
LC-10 1996 是闰年L14 100%
LC-11 2000 是闰年L2 100%