博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第三次作业+105032014061
阅读量:5273 次
发布时间:2019-06-14

本文共 2611 字,大约阅读时间需要 8 分钟。

被测试代码链接:http://www.cnblogs.com/chenyp1996/p/6619103.html

1、修正流程图:根据新修改的代码,再次修正流程图

 

 

2、测试用例设计:依据所有的覆盖理论,分别写出相应的测试用例设计。

 

覆盖方法

用例号

输入

期待结果

实际结果

通过

时间

语句覆盖

1

2005 1 20

2005121

2005121

通过

2017/3/29

语句覆盖

2

return

谢谢使用,再见~

谢谢使用,再见~

通过

2017/3/29

判断覆盖

3

2014 10 32

日期超出范围

日期超出范围

通过

2017/3/29

判断覆盖

4

2017 04 32

日期不存在

日期不存在

通过

2017/3/29

判断覆盖

5

2012 8 8

201289

201289

通过

2017/3/29

判断覆盖

6

A a a

日期格式错误

日期格式错误

通过

2017/3/29

判断覆盖

7

1900 1 1

年份超出范围

年份超出范围

通过

2017/3/29

条件覆盖

8

1998 13 1

月份超出范围

月份超出范围

通过

2017/3/29

条件覆盖

9

2000 11 32

日期超出范围

日期超出范围

通过

2017/3/29

判断/条件覆盖

10

2050 22 32

月份超出范围

月份超出范围

通过

2017/3/29

判定/条件覆盖

11

2001 11 -1

日期超出范围

日期超出范围

通过

2017/3/29

判定/条件覆盖

12

18000 1 1

年份超出范围

年份超出范围

通过

2017/3/29

判定/条件覆盖

13

2050 12 31

205111

205111

通过

2017/3/29

组合覆盖

14

2017 2 28

201731

201731

通过

2017/3/29

组合覆盖

15

2014 13 25

月份超出范围

月份超出范围

通过

2017/3/29

组合覆盖

16

1911 5 32

年份超出范围

年份超出范围

通过

2017/3/29

组合覆盖

17

2051 13 32

月份超出范围

月份超出范围

通过

2017/3/29

路径覆盖

18

2017 13 1

月份超出范围

月份超出范围

通过

2017/3/29

路径覆盖

19

2051 12 10

年份超出范围

年份超出范围

通过

2017/3/29

路径覆盖

20

2017 1 32

日期超出范围

日期超出范围

通过

2017/3/29

路径覆盖

21

2014 4 31

日期不存在

日期不存在

通过

2017/3/29

路径覆盖

22

2015 1 22

2015123

2015123

通过

2017/3/29

路径覆盖

23

2015 a s

日期格式错误

日期格式错误

通过

2017/3/29

路径覆盖

24

return

谢谢使用,再见~

谢谢使用,再见~

通过

2017/3/29

3、单元测试框架:采用单元测试框架Junit,初步简单的自动化执行测试用例。

import static org.junit.Assert.*;import org.junit.BeforeClass;import org.junit.Test;public class MyDateText {        MyDate date = new MyDate();    @BeforeClass    public static void setUpBeforeClass() throws Exception {    }    @Test    public void testnextdate() {        assertEquals("月份超出范围",date.nextdate(20, 1, 2004));        assertEquals("年份超出范围",date.nextdate(11, 3, 1906));        assertEquals("日期超出范围",date.nextdate(10,32, 2014));        assertEquals("2005年1月21日",date.nextdate(1, 20,2005 ));        assertEquals("日期不存在",date.nextdate(4,31, 2017));        assertEquals("2017年2月1日",date.nextdate(1, 31, 2017));            assertEquals("2015年12月31日",date.nextdate(12, 30,2015));        assertEquals("2000年3月1日",date.nextdate(2, 29, 2000));        assertEquals("2000年2月29日",date.nextdate(2, 28, 2000));        assertEquals("2051年1月1日",date.nextdate(12, 31, 2050));        assertEquals("2017年3月1日",date.nextdate( 2, 28,2017));            }    }

4、测试结果:根据测试用例设计,执行测试,并给出TestRunner测试结果图。

 

 

4、测试小结:

(1).通过此次的实验,基本掌握了白盒测试的几种覆盖方法,并掌握了它们之间的关系。

(2).对于如何编写测试用例有了更深一层的了解,对以后学习这门课有了更好的帮助。同时也认识到测试用例是基于需求的,为了测试程序是否满足需求,要想写好测试用例必须对于需求做到完全理解,并能从全局上把握住需求。

(3).采用单元测试框相对于使用main()方法调用,能够提高开发速度;提高软件代码质量;提升系统的可信赖度。

(4).软件测试是发现错误;而软件调试确是诊断并改正错误、错误定位、纠正错误、回归测试,这是两个不一样的过程。

 

 

转载于:https://www.cnblogs.com/chenxxiaol/p/6643021.html

你可能感兴趣的文章
Leetcode Balanced Binary Tree
查看>>
[JS]递归对象或数组
查看>>
linux sed命令
查看>>
湖南多校对抗赛(2015.03.28) H SG Value
查看>>
hdu1255扫描线计算覆盖两次面积
查看>>
hdu1565 用搜索代替枚举找可能状态或者轮廓线解(较优),参考poj2411
查看>>
程序存储问题
查看>>
优雅地书写回调——Promise
查看>>
AX 2009 Grid控件下多选行
查看>>
PHP的配置
查看>>
Struts框架----进度1
查看>>
Round B APAC Test 2017
查看>>
MySQL 字符编码问题详细解释
查看>>
Ubuntu下面安装eclipse for c++
查看>>
Windows 2003全面优化
查看>>
格而知之2:UIView的autoresizingMask属性探究
查看>>
我的Hook学习笔记
查看>>
js中的try/catch
查看>>
寄Android开发Gradle你需要知道的知识
查看>>
整理推荐的CSS属性书写顺序
查看>>