实验:白盒测试
一、实验目的
了解白盒测试的概念、目标和方法,掌握逻辑覆盖测试和基本路径测试的方法。通过实验,提高和运用白盒测试技术解决实际测试问题的能力,熟悉具体编程环境下(c++、c#或 java)编写、调试单元代码的基本操作技术和方法。
二、实验内容
编写程序,完成以下功能:实现 PriorDate 函数,获得当前输入日期的前一个日期。
例如:输入日期 day 变量值大于 1,则把 day 变量的值减 1;如果输入日期是2–12 月份中某月的第一天,把day 变量的值置为前一个月的最后一天,month 变量的值减 1; 如果输入日期是1月的第一天,则 day 变量的值置为 31,month 变量的值置为 12,year 变量的值减 1。
关于最后一天的判断:如果是有31天的月份(1,3,5,7,8,10,12),day 变量值为 31,如果是有30天的月份(4,6,9,11),day 变量值为 30;如果是有29天的月份(闰年的2月),day 变量值为29;如果是有 28 天的月份(非闰年的 2 月),day 变量值为 28。
设计测试用例进行白盒测试,使其分别满足语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖以及路径覆盖。
**三、**实验步骤
1.实验流程图
2.设计测试用例进行白盒测试
(1)语句覆盖
语句覆盖 | 覆盖语句 | 输出结果 |
---|---|---|
2011.14.6 | a,b,c | 无效 |
2016.3.1 | a,b,d,i,n | 2016.2.29 |
2011.3.1 | a,b,d,l,o | 2011.2.28 |
2011.1.1 | a,b.d.e.k.j.p | 2010.12.31 |
2006.10.1 | a,b,d,e,f,g,l,q | 2006.9.30 |
2006.4.1 | a,b,d,e,f,g,h,m,r | 2006.3.31 |
2006.5.2 | a,b,d,e,f,k | 2006.5.1 |
(2)判定覆盖
测试用例 | b | d | e | f | g | h | i | 输出结果 |
---|---|---|---|---|---|---|---|---|
2011.14.6 | F | 无效 | ||||||
2016.3.1 | T | T | T | 2016.2.29 | ||||
2011.3.1 | T | T | F | 2011.2.28 | ||||
2011.1.1 | T | F | T | 2010.12.31 | ||||
2006.10.1 | T | F | F | T | T | 2006.9.30 | ||
2006.4.1 | T | F | F | T | F | T | < |