等价类划分第二弹!

类似于上周的作业,为上周作业“等价类划分”的拓展版本。

改变之处为EditBox变为三个。

一、题目要求

二、划分等价类

三、测试用例

编号 测试用例 预期输出结果
1
123

aBc

456def

输入1,2,3有效
2
aBc

456def

输入1长度小于1
3
123

[email protected]

456def

输入2含非法字符
4
123

aBc

456def7

输入3长度大于6
5
[email protected]

456def

输入1,2错误
6
aBc

456def7

输入1,3错误
7
123

[email protected]

456def7

输入2,3错误
8
[email protected]

456def7

输入1,2,3错误

四、代码

 1 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
 2 <%
 3 String path = request.getContextPath();
 4 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
 5 %>
 6 <%request.setCharacterEncoding("utf-8"); %>
 7 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 8 <html>
 9 <script type="text/javascript">
10     function func()
11     {
12         var inputArray = new Array(3);
13         var alertStr = new Array("长度小于1,无效","长度大于6,无效","非法字符,无效", "有效");
14         var reg = /^[A-Za-z0-9]+$/;    //正则表达式表示字母或者数字
15         var i;
16         for(i = 0; i<3; i++){
17             var s = document.getElementById(i).value;
18             if(arr=s.match(reg)){
19                 if(s.length > 6) inputArray[i] = 1;
20                 else inputArray[i] = 3;
21             }
22             else{
23                  if(s.length < 1) inputArray[i] = 0;
24                  else inputArray[i] = 2;
25             }
26         }
27
28         tips = "";
29         var j;
30         for(j = 0; j<3; j++){
31             index = inputArray[j];
32             tips += "第"+(j+1)+"个文本框输入"+alertStr[index]+"\n";
33         }
34         alert(tips);
35     }
36 </script>
37   <head>
38     <base href="<%=basePath%>">
39
40     <title>MyPage</title>
41     <meta http-equiv="pragma" content="no-cache">
42     <meta http-equiv="cache-control" content="no-cache">
43     <meta http-equiv="expires" content="0">
44     <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
45     <meta http-equiv="description" content="MyPage">
46     <link href="./css/bootstrap.min.css" rel="stylesheet" media="screen">
47   </head>
48 <center>
49 <form>
50 <font size=4>请输入:</font><br>
51 <div class="container-fluid">
52     <div class="row-fluid">
53         <div class="span12">
54             <form class="form-horizontal">
55                 <div class="control-group">
56                     <label class="control-label" for="inputEmail"><br>输入1:</label>
57                     <div class="controls">
58                         <input class="form-control" name="0" id="0" size="10" size="20" maxlength=15/>
59                     </div>
60                 </div>
61                 <div class="control-group">
62                     <label class="control-label" for="inputEmail"><br>输入2:</label>
63                     <div class="controls">
64                         <input class="form-control" name="1" id="1" size="10" size="20" maxlength=15/>
65                     </div>
66                 </div>
67                 <div class="control-group">
68                     <label class="control-label" for="inputEmail"><br>输入2:</label>
69                     <div class="controls">
70                         <input class="form-control" name="2" id="2" size="10" size="20" maxlength=15/>
71                     </div>
72                 </div>
73                 <div class="control-group">
74                     <div class="controls">
75                         <br><button class="btn btn-primary btn-block" type="button" name="button" id="button" onclick="func();">确定</button></a>
76                     </div>
77                 </div>
78             </form>
79         </div>
80     </div>
81 </div>
82 </form>
83 </center>
84 </html>

五、测试结果图

  1、

  

  2、

  

  3、

  

  4、

  

  5、

  

  6、

  

  7、

  

  8、

  

时间: 2024-10-11 11:59:23

等价类划分第二弹!的相关文章

软件测试(3)-基于等价类划分的一个小例子

程序要求从一个输入框变为3个输入框,其他要求不变 则这次的测试用例本着等价类划分的原则进行如下的修改 表格旁边的就此这次的测试代码 box No.1 box No.2 box No.3 Result abc abc abc success   abc abc box No.1 fail abc   abc box No.2 fail abc abc   box No.3 fail *1   abcdefgh All Fail abc *1 1bcedfgrt Only box No.1 succ

等价类划分方法的应用(二)

等价类划分方法的应用(二) 题目: 三个EditBox,全部值允许输入1-6个英文字符或数字,按OK结束. 以输入条件划分等价类: 输入的字符串必须满足以下条件: 条件1:第一行长度1-6 条件2:第一行字符为'0'-'9'或'a'-'z'或'A'-'Z' 条件3:第二行长度1-6 条件4:第二行字符为'0'-'9'或'a'-'z'或'A'-'Z' 条件5:第三行长度1-6 条件6:第三行字符为'0'-'9'或'a'-'z'或'A'-'Z' 编号 有效等价类 编号 无效等价类 1 第一行长度1-

JVM第二弹

JVM第二弹 GC分代收集算法VS分区收集算法 分代收集算法 当前主流的VM垃圾收集都采用"分代收集"算法,这种算法会根据对象存活周期的不同将内存划分为几块,如JVM中的新生代.老年代.永久代,这样就可以根据个年代特点分别采用最适当的GC算法. 新生代·复制算法 每次垃圾收集都能发现大批对象已死,只有少量存活.因此选用复制算法,只需要付出少量存活对象的复制成本就可以完成收集. 老年代·标记整理算法 因为对象存活率高.没有额外空间对它进行分配担保,就必须采用"标记-清理&quo

《我与希乐仑》第二弹

致徐敏: 如果你觉得我的这篇报道侵害了你和贵公司的权益,你可以上法院告我,但我说的都是事实,不怕你告,有事找我律师,谢谢! 我是希乐仑科技发展(上海)有限公司前员工,曾经为希乐仑立下汗马功劳.这公司从2014年2月份开始搞我,我去年的绩效是3.8/5.0,完全没有绩效问题.他们倒好,自从我查完我们公司某商业间谍之后,就给我穿小鞋,说我这个不好,那个拖延,这不是扯淡吗?公司在3月5日非法把我裁掉,而且直到现在还未支付我2月份工资,行吧,那我就不再沉默了,当我吃素的是吧!我现在把这件事情公之于众,望

软件测试技术(二)——使用等价类划分的方法进行编码的UI测试

测试的目标程序 程序代码 划分出的等价类 划分方法 编号 有效等价类 编号 无效等价类 长度 1 长度1-6 5 长度0 6 长度>=7 字符 2 含有字符a-z 7 含有中文字符 3 含有字符A-Z 8 含有特殊字符 4 含有字符0-9 测试用例 编号 输入 覆盖的等价类 期望输出 实际输出 1 aA0 1,2,3,4 success 2 5 不能为空 3 aA01234 6 请输入1-6个英文字母或数字 4 哈 7 请输入1-6个英文字母或数字 5 T_T 8 请输入1-6个英文字母或数字

等价类划分--EditBox问题

众所周知,等价类划分法是黑盒测试中的一种典型方法.在实现时完全不用去考虑程序的内部结构,而是只根据程序对应的规格说明书对要进行的输入范围进行划分,分成若干个互不相交的子集,即为等价类.常用的等价类划分原则有以下几种: 1.按区间划分. 2.按数值划分. 3.按数值集合划分. 4.按限制条件或规则划分. 5.细分等价类. 在设计测试用例时,测试人员应同时考虑有效等价类和无效等价类测试用例的设计. 例:EditBox测试用例设计 允许输入1到6个英文字符或数字,按OK结束 考虑有效等价类:长度:1到

等价类划分方法的应用实例

上星期我们简单地了解了黑盒测试.而在黑盒测试中一个常用的测试方法就是等价类划分.所谓等价类划分即是我们按照一定的划分原则,将输入域划分为有效等价类和无效等类.   常用的等价类划分原则: 按区间划分 按数值划分 按数值集合划分 按限制条件或规则划分 细分等价类 按照限制条件或者规则划分等价类举例: 题目:文本框的非法输入测试:  允许1到6个英文字符或数字,按OK结束.   有效等价类 无效等价类 长度           1-6                  0,7, …     字符  

2 黑盒测试以及等价类划分的应用

黑盒测试的基本概念 黑盒测试:是一种常用的软件测试方法,它将被测软件看作一个打不开的黑盒,主要根据功能需求设计测试用例,进行测试. 黑盒测试是一种从软件外部对软件实施的测试,也称功能测试或基于规格说明的测试. 其基本观点是:只关心软件的输入数据和输出结果. 黑盒测试是从用户观点出发的测试,尽可能发现软件的外部行为错误.在已知软件产品功能的基础上, 检测软件功能能否按照需求规格说明书的规定正常工作,是否有功能遗漏: 检测是否有人机交互错误,是否有数据结构和外部数据库访问错误,是否能恰当地接收数据并

深究angularJS系列 - 第二弹

深究angularJS系列 - 第二弹,在初步了解了Angular的基础上,进一步的针对Angular的控制器和作用域问题深入探究O(∩_∩)O~~ Angular控制器 控制器(Controller)的理解 控制器是对view的抽象,用来接收view的事件,响应view的请求: 控制器包含view的静态属性和动态的方法: 控制器与view是一对一的关系. 控制器(Controller)的结构 1 .controller("控制器的名字",function($scoppe){ 2 ..