软件测试实例之闰年判断

一、需求

  测试输入年份是否为闰年,并能防止非法输入

二、需求分析

  1. 显示一个输入框以供输入,提交按钮以供提交输入;

  2. 过滤非法输入,当且仅当输入字符全为数字而数字不为零(注:公元0年不存在)时方才做进一步处理,否则提示输入错误;

    用HTML&JavaScript编写只需:

function checkNum(value) {  //value为输入框传入的值
    var Reg = /^[0-9]*$/;
    if (Reg.test(value)) return true;   //输入正确
    return false;              //非法输入
}

  3. 根据输入的数字判断是否为瑞年:

    a.普通年能被4整除且不能被100整除的为闰年。(如2004年就是闰年,1900年不是闰年)

    b.世纪年能被400整除的是闰年。(如2000年是闰年,1900年不是闰年)

    

if((document.getElementById("input").value%4==0&&document.getElementById("input").value%100!=0)||document.getElementById("input").value%400==0)
    document.getElementById("output").innerHTML="输入年份为闰年.";
else
    document.getElementById("output").innerHTML="输入年份为平年.";

三、测试用例

编号 输入 预期输出
1 2008 输入年份为闰年.
2 2000 输入年份为闰年.
3 1900 输入年份为平年.
4 abcd 请检查是否输入正确.
5 0 请检查是否输入正确.

四、实际测试

五、源码:HTML&JavaScript

  

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="GB2312">
<style>body{text-align:center}</style>
<body>
请输入年份:<input type="text" id="input" autofocus="autofocus"/>
<input type="submit" value="确定" onclick="test()"/>
<p id="output"></p>
<script>
function test(){
    if(!checkNum(document.getElementById("input").value)||document.getElementById("input").value==0)
        document.getElementById("output").innerHTML="请检查是否输入正确.";
    else if((document.getElementById("input").value%4==0&&document.getElementById("input").value%100!=0)||document.getElementById("input").value%400==0)
        document.getElementById("output").innerHTML="输入年份为闰年.";
    else
        document.getElementById("output").innerHTML="输入年份为平年.";
}
function checkNum(value) {
    var Reg = /^[0-9]*$/;
    if (Reg.test(value)) return true;
    return false;
}
</script>
</body>
</html>
时间: 2024-10-10 02:53:30

软件测试实例之闰年判断的相关文章

软件测试技术(四)——闰年判断器+ int.Parse错误如何解决

目标程序 本次所测试的目标程序是一个闰年判断器,我们知道,一般情况下年份被4整除就可以了,但是如果遇到百年的时候还需要被400整除,于是有了如下的逻辑判断: bool isRunNian = false; if (year > 0) { if ((year % 100 == 0 && year % 400 == 0) || (year % 100 != 0 && year % 4 == 0)) { isRunNian = true; } } 测试方法介绍—Syntax

蓝桥杯 BASIC-1~3 闰年判断、01子串、字母图形

闰年判断 [AC代码]: #include <iostream> #include <algorithm> using namespace std; int main() { int y = 0; cin >> y; if (((0==y%4)&&(0!=y%100))||(0==y%400)) cout << "yes"; else cout << "no"; } 01子串 [AC代码]:

蓝桥杯 基础练习 闰年判断【基础题】

基础练习 闰年判断 时间限制:1.0s   内存限制:256.0MB 问题描述 给定一个年份,判断这一年是不是闰年. 当以下情况之一满足时,这一年是闰年: 1. 年份是4的倍数而不是100的倍数: 2. 年份是400的倍数. 其他的年份都不是闰年. 输入格式 输入包含一个整数y,表示当前的年份. 输出格式 输出一行,如果给定的年份是闰年,则输出yes,否则输出no. 说明:当试题指定你输出一个字符串作为结果(比如本题的yes或者no,你需要严格按照试题中给定的大小写,写错大小写将不得分. 样例输

lqb 基础练习 闰年判断

基础练习 闰年判断 时间限制:1.0s   内存限制:256.0MB 问题描述 给定一个年份,判断这一年是不是闰年. 当以下情况之一满足时,这一年是闰年: 1. 年份是4的倍数而不是100的倍数: 2. 年份是400的倍数. 其他的年份都不是闰年. 输入格式 输入包含一个整数y,表示当前的年份. 输出格式 输出一行,如果给定的年份是闰年,则输出yes,否则输出no. 说明:当试题指定你输出一个字符串作为结果(比如本题的yes或者no,你需要严格按照试题中给定的大小写,写错大小写将不得分. 样例输

软件测试:闰年判断

1 #include<stdio.h>  void main()  {    2 int year, leap;   3     scanf("%d",&year);  4         if (year%4==0)         {    if (year%100==0)     {     if (year%400==0)  leap=1;     5   6   7 else leap=0;  8         }  9         else  le

实例脚本,判断是否加入开机自启动,服务状态、脚本规范

脚本实例: 判断ntpd服务是否加入开机自启动 #!/bin/bash # Output: # Result must exactly equal to "3:on,5:on|enable" # # Other output is non-compliant. # Confirm OS Version unset OS_VERSION uname -r | grep el5 > /dev/null && OS_VERSION=el5 uname -r | grep

运算符和表达式 、 分支结构 例题 闰年判断

某年份只需要满足下列两个条件之一,即可认定是闰年: 年份可以被 4 整除且不能被 100 整除: 年份可以被400 整除. 使用三目运算符,构建表示判断结果的 String 类型信息,并输出到控制台.代码如下所示: 1 import java.util.Scanner; 2 public class LeapYear { 3 public static void main(String[] args) { 4 Scanner scanner = new Scanner(System.in); 5

软件测试第四周--闰年问题的非法输入处理

闰年的判断条件: ①.普通年能被4整除且不能被100整除的为闰年.②.世纪年能被400整除的是闰年③.对于数值很大的年份,这年如果能整除3200,并且能整除172800则是闰年.如172800年是闰年,86400年不是闰年 测试用例: 编号 输入 输出 1 2004 此年是闰年 2 2008 此年是闰年 3 2000 此年是闰年 4 1999 此年非闰年 5 1998 此年非闰年 6 -1200 非法输入 基本逻辑:#include<stdio.h>void main(){ int year,

C语言实现1000--2000的闰年判断

 判断1000年---2000年之间的闰年 #include <stdio.h>int main(){ int year=0; int num=0; for(year=1000;year<=2000;year++) {  if((year%4==0&&year%100!=0)||(year%400==0))  {   printf("%d ",year);   num++;  } } printf("num=%d\n",num);