闰年测试(非法输入的判断)

1. 问题描述:

输入一个年份,判断其是否为闰年,若为非法输入则给出提示



2. 问题分析:

闰年的判断:

1)输入一个年份,若它能被400整除,则它是闰年;若它能被4整除,且它不能被100整除,则它是闰年

由此判断,若它是闰年,则输出“该年是闰年”;否则,则输出“该年不是闰年”

2)若为非法输入,给出提示,则输出“输入不合法”



3. 测试用例:

编号        输入        期望输出

1         2004        该年是闰年

2           2000        该年是闰年

3         1900       该年不是闰年

4         200,.        输入不合法



4. 测试结果:

    

    



5. 测试代码:

 1 import javafx.application.Application;
 2 import javafx.event.ActionEvent;
 3 import javafx.event.EventHandler;
 4 import javafx.scene.Scene;
 5 import javafx.scene.control.Button;
 6 import javafx.scene.control.TextField;
 7 import javafx.scene.layout.AnchorPane;
 8 import javafx.scene.layout.HBox;
 9 import javafx.scene.text.Text;
10 import javafx.stage.Stage;
11
12 public class Test extends Application{
13       public static void main(String[] args) {
14          Test.launch(args);
15       }
16
17       public void start(Stage stage) throws Exception{
18           stage.setTitle("Runnian");
19           AnchorPane root = new AnchorPane();
20
21           HBox hbox = new HBox(8);
22           Text t1 = new Text("Year: ");
23           final TextField t2 = new TextField();
24           Button btn = new Button("OK");
25           hbox.getChildren().addAll(t1, t2, btn);
26
27           btn.setOnAction(new EventHandler<ActionEvent>(){
28                 @Override
29                 public void handle(ActionEvent actEvt){
30                     try{
31                         int y = Integer.parseInt(t2.getText().toString());
32
33                         if ((y % 400 == 0) || (y % 4 == 0 && y % 100 != 0))
34                             System.out.println("该年是闰年");
35                         else
36                             System.out.println("该年不是闰年");
37                     }
38                     catch(Exception e){
39                         System.out.println("输入不合法");
40                     }
41                 }
42           });
43
44           AnchorPane.setTopAnchor(hbox, 90.0);
45           AnchorPane.setLeftAnchor(hbox, 30.0);
46           root.getChildren().add(hbox);
47
48           stage.setScene(new Scene(root, 300, 200));
49           stage.show();
50       }
51 }
时间: 2024-12-16 08:28:36

闰年测试(非法输入的判断)的相关文章

闰年测试非法输入的处理 简单安卓app 20150406

在软件测试的课上,老师介绍了闰年测试.闰年测试旨在检测某一年份是否为闰年,计算方式为四年一闰,百年不闰,四百年再闰.使用安卓实现这个小程序. 界面代码如下: 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width=&quo

闰年的非法输入的问题

1.问题描述 输入年份,判断其是否为闰年. 2.判断条件 1)能被4整除且不能被100整除的为闰年. 2)能被100整除且被400整除的为闰年. 3.等价类划分 编号 有效等价类 编号 无效等价类 1 能被400整除 3 能被100整除不能被4整除   2 能被4整除不能被100整除 4 不能被4整除 5 非法输入(包括负数) 4.测试用例 编号 输入 覆盖等价类 输出 1 1600 1 1600是闰年 2 2012 2 2012是闰年 3 1700 3 1700非闰年 4 2014 4 201

JAVA闰年测试与解决非法输入

问题实现 实现一个闰年测试的JAVA代码如下: package leapyear; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextFi

软件测试——闰年测试

只要是对于需要记录年份的程序,闰年检测都是一个很重要的环节.公历的闰年规则如下:   1.普通年能被4整除且不能被100整除的为闰年.(如2004年就是闰年,1900年不是闰年) 2.世纪年能被400整除的是闰年.(如2000年是闰年,1900年不是闰年) 然而对于不正确的输入,程序必须对持做出反应,不能使异常情况阻碍程序的运行,下面是闰年检测的程序试例: 输入年份 结果 2000 闰年 1900 非闰年 -1600 非法输入 1864 闰年 saddsa 非法输入 代码实现: import j

关于软件测试(4):闰年输入的判断以及非法输入的处理测试

针对这周的软件测试课程,讲解了非法输入的不正当处理会对程序造成不必要的损失,因此通过简单的闰年检测程序来处理关于闰年测试的非法输入. 一.需求分析 要求输入框输入年份,点击按钮,出现提示.并能有效的处理任何输入 二.测试用例 内容 取值 预期结果 被400整除 2000 是闰年 被100整除但不被400整除 1900 不是闰年 被4整除且不被100整除 1904 是闰年 不被4整除 1901 不是闰年 非数字字符 abc 非法输入 负数 -1234 非法输入 小数 2000.5 非法输入 空字符

[软件测试学习]考虑到测试的代码编写/int.parse的非法输入—由一个简单的c#闰年检测程序说起

一个简单的C#的闰年检测程序 1.闰年检测的函数编写 当提起检测平年闰年时候,第一反应写出的代码 1 public static bool isLeapYear(int year){ 2 return ((year % 4 == 0 && year % 100 != 0)||(year % 400 == 0)) 3 } 但是这个并不易于测试和出现错后的修改,更改代码如下 1 public static bool isLeapYear(int year){ 2 bool check = ne

关于闰年测试中非法输入的处理

在软件测试技术课当中我们进行了关于闰年的测试,闰年的测试方法如下所示: public static boolean isLeapYear(int year)        {             if (year % 400 == 0)                return true;             if (year % 100 == 0)                return false;             if (year % 4 == 0)         

【软件测试】闰年问题(不考虑非法输入)

问题描述 输入年份,输出输入年份是否为闰年(不考虑非法输入) 一个年份是闰年的条件是: 该年份能被4整除但是不能被100整除或 该年份能被400整除 代码实现 import javax.swing.JOptionPane; import javafx.application.Application; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.geometry.Pos; impo

【软件测试】考虑闰年问题中的非法输入

问题提出 在上一篇中提到了闰年问题的实现以及测试,但是在上篇中并没有提及输入框中如果输入非法输入会发生什么问题 观察如下,当我们在输入框中输入"ab"时: 会出现下面java.lang.NumberFormatException: java.lang.NumberFormatException: For input string: "ab" at java.lang.NumberFormatException.forInputString(Unknown Sourc