等价类测试

 

某直辖市的电话号码由三部分组成,这三部分的名称和内容分别是:
(1)地区码:空白或3位数字;
(2)前缀:非“0”和非“1”开头的4位数字;
(3)后缀:4位数字
假定被测程序接受一切符合上述规定的电话号码,拒绝所有不符合的号码,试设计它的等价类以及测试用例(仅支持单缺陷假设)。
要求:给出详细等价类分析过程,列出等价类,并设计测试用例。

根据题目以及书上的案例,我由结论一:输入条件规定了个数可确定一个有效等价类和两个无效等价类。

这里的条件一:地区码为3位数字可得

有效等价类:

1、 3位有效数字。

无效等价类:

2、多于3个数字。

3、少于三个数字 ;

条件二:前缀为4位数字得:

有效等价类:

1、前缀4位数字 。 

无效等价类:

1、 少于4位数字 。

2、 多于4位数字;

条件三:后缀四位数字得:

有效等价类:

1、 后缀4位数字。

无效等价类:

1、 多于四位数字。

2、 少于四位数字 。

由结论二:在输入条件规定了输入值的集合或规定了必须如何的条件下,可以确定一个有效等价类和一个无效等价类。

这里条件一:地区码为空白得:

有效等价类:1、 空白 。

无效等价类:2 、这里的2可以为:不为空白,但就和无效等价类:多于/少于三位数字存在交集;

故分析得:2、 存在非数字字符;

条件二:前缀开头数字非0或非1

可得有效等价类:

1、前缀开头数字非零非一开头

无效等价类:

1、前缀0开头 。

2、 前缀1开头 ;

条件三:前缀为数字得:

1、有效等价类:前缀为数字,

无效等价类:2、 前缀存在非数字字符。

条件四:后缀是数字:

得有效等价类:

1、后缀是数字   ,无效等价类

1、后缀存在非数字字符。

最后在 地区码、前缀、后缀中将有交集的等价类进行合并,即进行抽象。有效等价类中前缀码部分,

有效等价类:

1、前缀开头数字非零非一开头。

2、 前缀为数字。

3、前缀四位数字可合并为有效等价类:前缀是2000--9999之间的数字;

后缀部分有效等价类:

1、后缀4位数字。

2、后缀是数字可以合并为有效等价类:

1、后缀是四位数字。

总上所述,所有等价类如下:

输入

有效等价类

无效等价类

地区码

①空白
②3位数字

③有非数字字符
④少于三位数字且不为空
⑤多余三位数字

 

 

 

前缀

⑥2000~9999

⑦有非数字字符
⑧"0"开头
⑨"1"开头
⑩少于四位数字
⑪多于四位数字

后缀

⑫4位数字

⑬有非数字字符
⑭少于四位数字
⑮多于四位数字

因为此题仅支持单缺陷假设。故设计测试用例要仅有一个无效等价类,不能多个无效等价类存在。故设计如下测试用例:

ID

输入值

预期输出

覆盖的等价类

 

地区码

前缀

后缀

 

 

1

空白

2000

1234

有效

①⑥⑫

2

123

2000

1234

有效

②⑥⑫

3

H11

2000

1234

无效

4

12

2000

1234

无效

5

1234

2000

1234

无效

6

123

2HWY

1234

无效

7

123

0123

1234

无效

8

123

1234

1234

无效

9

123

200

1234

无效

10

123

20000

1234

无效

11

123

2000

1HWY

无效

12

123

2000

123

无效

13

123

2000

12345

无效

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/474238.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

元类及创建元类的方法(面试用

元类就是类的类,type就是Python中创建所有类的元类。type就是创建类对象的类。Python中所有的东西——都是对象。这包括整数、字符串、函数以及类。它们全部都是对象,并且它们都是从一个类创建来,这个类就是type。# class Foo(object):# …

LeetCode 第 33 场双周赛(511/3304,前15.5%,第4次全部通过)

文章目录1. 比赛结果2. 题目1. LeetCode 5479. 千位分隔数 easy2. LeetCode 5480. 可以到达所有点的最少点数目 medium3. LeetCode 5481. 得到目标数组的最少函数调用次数 medium4. LeetCode 5482. 二维网格图中探测环 hard1. 比赛结果 题目比较简单,全部做出来了。…

Oracle存储过程单步调试方法

oracle存储过程单步调试的方法 1.在要调试的过程上单击test,如下图所示: 2.出现如下界面时单击最左上方的按钮:,如下图所示: 3.单击后呈现如下画面: 其中: 表示要停止test; 表示要全部运行完这…

等价类、决策表测试

问题:输入年月日year、month、day,其中年份的有效取值范围为[1818,2018],请输出输入日期的前一天,例如输入2018年9月18日,输出为2018年9月17日。若输入日期非法,例如输入2013年2月30日,则输出“…

小大整数对象池及intern机制

1. 小整数对象池 Python 对⼩整数的定义是[-5, 256] 2. 大整数对象池 每⼀个⼤整数,均创建⼀个新的对象。 a 100 b 100 # print(a is b) True # 代码块 c 1000 d 1000 print(c is d) # True class Foo(object): a 1000 c 1000 class …

Apache Commons IO: 简化文件和IO操作

第1章:引言 咱们在做Java编程的时候,经常会遇到各种文件操作和输入输出(IO)的问题。不论是读取一个配置文件,还是把数据写入日志,这些看似简单的任务有时候会让人头疼。传统的Java IO操作,虽然…

LeetCode 1560. 圆形赛道上经过次数最多的扇区

文章目录1. 题目2. 解题2.1 模拟2.2 脑筋急转弯1. 题目 给你一个整数 n 和一个整数数组 rounds 。有一条圆形赛道由 n 个扇区组成,扇区编号从 1 到 n 。 现将在这条赛道上举办一场马拉松比赛,该马拉松全程由 m 个阶段组成。其中,第 i 个阶段…

如何用jar命令对java工程进行打包

如何用jar命令对java工程进行打包有时候为了更方便快捷的部署和执行Java程序,要把java应用程序打包成一个jar包。而这个基础的操作有时候也很麻烦,为了方便java程序员们能够方便的打包java应用程序,下面对jar命令进行介绍,并举出几…

垃圾回收:引用计数与分代收集机制

当引⽤计数为0时,该对象⽣命就结束了。 引⽤计数机制的优点: 1、简单 2、实时性:⼀旦没有引⽤,内存就直接释放了。不⽤像其他机制等到特定时机。实时性还带来⼀个好处:处理回收内存的时间分摊到了平时。 引⽤计数机制的…

Android 行程APP简单介绍

登录模块 数据库设计如图所示创建了如上的数据库由于没有注册功能人为添加了两个用户: 数据库创建语句: public static final String CREATE_task "create table user (" "id integer primary key autoincrement, ""remenber…

python中主要内建函数

1.__getattribute__属性访问拦截器(内建属性 class Foo(object): def __init__(self): self.a 100 def __getattribute__(self, name): if name "a": # return self.a # __getattribute__("a") return super(Foo,self).__getattribute__(&qu…

LeetCode 1561. 你可以获得的最大硬币数目

文章目录1. 题目2. 解题1. 题目 有 3n 堆数目不一的硬币,你和你的朋友们打算按以下方式分硬币: 每一轮中,你将会选出 任意 3 堆硬币(不一定连续)。Alice 将会取走硬币数量最多的那一堆。你将会取走硬币数量第二多的那…

最近做项目的一些关于重构方面的总结

这半年做专题和项目的过程中,遇到一些有时很难想到问题,今天在这总结以下: 1. 关于width:100%缩小窗口时背景图片出现空白bug ,刚开始找了半天方法都没解决,最后在里面加了最小宽度给解决了, 例如&#xff…

微信小程序 地图组件使用

本地图程序利用map组件,以及使用它的markers,polyline属性分别设置地图两个位置的标志以及他们之间的连线,利用腾讯地图的API对两个地点进行查询,动态设置地图的经纬度,以及动态初始化markers,polyline属性。 程序运行截图如下&a…

python中的集合set

集合与之前列表、元组类似,可以存储多个数据,但是这些数据是不重复的 集合对象还⽀持union(联合), intersection(交), difference(差)和 sysmmetric_difference(对称差集)等数学运算. >>> x set(abcd) >>> x {c…

LeetCode 1562. 查找大小为 M 的最新分组

文章目录1. 题目2. 解题1. 题目 给你一个数组 arr ,该数组表示一个从 1 到 n 的数字排列。有一个长度为 n 的二进制字符串,该字符串上的所有位最初都设置为 0 。 在从 1 到 n 的每个步骤 i 中(假设二进制字符串和 arr 都是从 1 开始索引的情…

HDOJ 3415 Max Sum of Max-K-sub-sequence

单调队列优化。。。。Max Sum of Max-K-sub-sequenceTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4759 Accepted Submission(s): 1734Problem DescriptionGiven a circle sequence A[1],A[2],A[3]......A[n]…

DurOS语音开发

DuerOS语音开发项目,该项目通过搭载DuerOS开发者平台,利用平台开发的一组API规范,实现实时的语音播报功能。 整体流程示意图: 所用设备:树莓派微机系统、arduino与74HC595单片机、地图彩灯控制沙盘、小度语音。 数据流…

Sharepoint学习笔记—习题系列--70-573习题解析 -(Q40-Q44)

Question 40You need to send a single value from a consumer Web Part to a provider Web Part.Which interface should you use?A. IAlertNotifyHandlerB. IWebPartFieldC. IWebPartParametersD. IWebPartRow 解析:本题的目的是在Webpart之间传递“单值”(singl…