码迷,mamicode.com
首页 > 其他好文 > 详细

软件测试------判断闰年的输入框

时间:2015-04-06 20:12:08      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:

1.题目要求

坐在最后一排看的不是很清楚,貌似老师给了个能判断闰年的输入框,然后问大家输入abcd会怎么样,结果是报错了。

我们的任务是把这个判断闰年的输入框搞出来并且让这个系统可以handle非法的输入。

2.实现方法

实现方法再续前缘(html+servlet),关键代码如下:

 

 1      PrintWriter out = response.getWriter();
 2         String tmp = request.getParameter("year");
 3         out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
 4         out.println("<html>");
 5         out.println("<head>");
 6         out.println("<title>检查结果</title>");
 7         out.println("</head>");
 8         out.println("<body>");
 9         if(checkInput(tmp)){
10             if(isLeapYear(Integer.parseInt(tmp))){
11                 out.println(tmp+" 是闰年");
12             }else{out.println(tmp+" 不是闰年");}
13         }else{out.println("输入不合法,请点击返回重试");}
14         out.println("<button><a href=\"/UserForm/leapYear.jsp\">返回</a></button>");
15         out.println("</body>");
16         out.println("</html>");
17         out.flush();
18 
19 public boolean checkInput(String tmp){
20         Pattern pattern = Pattern.compile("([0-9]){4}");   
21         Matcher matcher = pattern.matcher(tmp);   
22         boolean ok = matcher.matches(); //当条件满足时,将返回true,否则返回false 
23         return ok;
24     }
25     
26 public boolean isLeapYear(int year){
27         return (year % 400 == 0)||(year % 4 == 0 && year % 100 != 0);
28     }

 

 

 

3.测试

首先先完成题目的要求,看过上面的代码可以知道,模式匹配可以准确的过滤掉非法的输入,如题目中的abcd,

这样判断闰年时调用parseInt()就不会出现不能转化的情况,也就不会报出exception。

技术分享    技术分享

 

接下来为了考虑周全,给出一些测试用例

1.存在空输入

系统会提示用户对年份输入

技术分享

2.输入为数字却长度不合适

技术分享     技术分享

 

3.当存在非数字输入时见上“abcd”示例

 

4.能被400整除的年份

技术分享    技术分享

5.不能被400整除,能被4整除,却又不被100整除的年份

技术分享    技术分享

6.不能被400整除,不能被4整除的年份

技术分享    技术分享

7.不能被400整除,能被4整除,又被100整除的年份

技术分享    技术分享

 

4.结果分析

测试时用到了白盒测试的路径覆盖,感觉系统的学习软件测试可以让测试更井井有条,减少疏漏。

 

软件测试------判断闰年的输入框

标签:

原文地址:http://www.cnblogs.com/bwju/p/4383819.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!