手机、电话号码、邮箱、域名、身份证号的测试用例

阅读:917 2019-03-20 14:08:20 来源:新网

测试的时候会遇到一些特殊的填写项,这些填写项不是简单随意的字符组合,有一定的实际意义和实际规则,需要验证其正确性。比如手机号码,一定是“1”开头的纯数字,如果输入2开头的就得给出错误提示。

以下我归纳常用具有实际意义和规则的填写项的测试用例。若有疏漏或错误欢迎补充。

(这里特指中国内地的手机用户,忽略区号)

手机号码:我国使用的手机号码为11位(1999年7月22日从10位全面升级为11位),其

中各段有不同的编码方向:前3位——网络识别号;第4-7位——地区编码;

第8-11位——用户号码。号码也就是所谓的mdn号码,即本网移动用户作被

叫时,主叫用户所需拨的号码,它采取e.164编码方式;存储在hlr和vlr

中,在map接口上传送。

其中mdn号码的结构如下:cc+mac+h0h1h2h3+abcd

【cc】:国家码,中国使用86(+86)。【mac】:移动接入码,本网采用网号方案,为133。【h0h1h2h3】:hlr识别码,由运营商统一分配。【abcd】:移动用户号,由各hlr自行分配。

mac网络识别号:

电信2g/3g号段(cdma2000网络)133、153、180、181、1894g号段177联通2g号段(gsm网络)130、131、132、155、1563g上网卡1453g号段(wcdma网络)185、1864g号段176、185移动2g号段(gsm网络)134x(0-8)、135、136、137、138、139、

150、151、152、158、159、182、183、1843g号段(td-scdma网络)157、187、1883g上网卡1474g号段178补充tips14号段以前为上网卡专属号段,如中国联通的是145,中国移动的是147等

170号段为虚拟运营商专属号段,170号段的11位手机号前四位来区分基

础运营商,其中“1700”为中国电信的转售号码标识,“1705”为中国移动,

“1709”为中国联通。

卫星通信1349(忽略不计)

(来源于百度百科,下同)

测试用例:

(1)有效等价类:1314151718开头的11位纯数字

(2)无效等价类:

1.位数不等于11

2.全角数字

3.号码包含非数字(中英文/大小写字符、特殊字符)

4.号码中包含空格(前/中/后、中英文/全半角空格)

5.不以1314151718开头。如10、12、63开头

(这里特指中国固定电话用户,包括区号和电话号码,忽略分机号)

电话号码:电话号码是电话管理部门为电话机设定的号码。为7--8位数字组成。

区号是指世界各大城市所属行政区域常用电话区划号码,这些号码主要用于国

内、国际长途电话的接入。在中国大陆拨打国内长途电话时,要先拨长途冠

码0号。中国大陆的区号有2位、3位、4位之分,增加字冠0(注:0不是区号)

就是3~5位区号。其中3位区号一般为直辖市和大区中心使用,可以视为特殊

情况;5位区号一般是县级城市或者特别地区包括台湾0886、香港0852、澳门

0853;其余均为4位区号。

3位区号:

010:北京市021:上海市022:天津市023:重庆市024:辽宁省沈阳市、铁岭市、抚顺市、本溪市025:江苏省南京市026:未定,预留027:湖北省武汉市028:四川省成都市、资阳市、眉山市029:陕西省西安市、咸阳市020:广东省广州市

4位区号:

0【3-9】xx

5位区号:

0【3-9】xxx;特殊地区如香港0852等。(是否测试5位区号,按照实际需求调整)

测试用例:

测区号:

(1)有效等价类:

1.3位数字:010、02【0-9】,随机抽取几个测试

2.4/5位数字:0【3-9】xx(x),随机抽取几个测试

(2)无效等价类

1.3位数字,但不是010和02【0-9】。如012、123、035

2.4/5位数字,但不是0【3-9】开头.如1234、0122、0276

3.位数少于3位和多于5位

4.全角数字

5.号码包含非数字(中英文/大小写字符、特殊字符)

6.号码包含空格(前/中/后、中英文/全半角空格)

测电话号码:

(1)有效等价类:

1.7位数字

2.8位数字

(2)无效等价类:

1.位数少于7位和多于8位

2.全角数字

3.号码包含非数字(中英文/大小写字符、特殊字符)

4.号码包含空格(前/中/后、中英文/全半角空格)

邮箱:在网络中,电子邮箱可以自动接收网络任何电子邮箱所发的电子邮件,并能存储规

定大小的多种格式的电子文件。电子邮箱具有单独的网络域名,其电子邮局地址在

@后标注,—个完整的internet邮件地址由以下两个部分组成,格式如下:

登录名@主机名.域名。其中,域名由几部分组成,每一部分称为一个子域

(subdomain),各子域之间用圆点“.”隔开,每个子域都会告诉用户一些有关这台

邮件服务器的信息。

尝试了一些大型网站的邮箱输入验证,找到了一些规律。

邮箱地址就是由“@”符号、最后一个“.”分隔成三部分:

(1)“@”前面的部分

a.只能输入小写字母、数字、符号“-(减号)”、“.(点号)”和“_”(下划线),能否输入大写字母视需求而定。

b.一般只能以字母开头。能不能以数字和下划线开头,甚至减号和点号开头,需要看具体需求,不同的网站都有不同的验证处理方式

c.能不能以减号、点号和下划线结尾,需要视具体需求而定

d.除了首位字符和末尾字符,可以出现“-.-、---、___、...”之类的组合(即可以任意组合)。

(2)“@”和最后一个“.”之间部分

a.只能输入小写字母、数字、“-”(减号)、“.”(点号),可不可以输入下划线和大写字母视需求而定。

b.不能出现连续多个点的输入,如“..”

c.“@”号后面绝对不能直接跟点号,而减号和下划线视需求而定(比如淘宝网验证邮箱时就可以@后面跟-和_)

d.可不可以出现“-.-、--、__、-.、.-”之类的组合,视需求而定。

(3)最后一个“.”后面的部分只能输入小写字母,能否输入大写字母视需求而定,且很多网站有字符数要求,一般为2位以上,3位或4位以内。

(4)所有字符中间绝对不能输入空格,首尾的空格要不要自动去除视需求而定。

(5)有且只能有1个“@”号,至少有一个“.”号

测试用例:

“@”前面的部分:

(1)有效等价类:

1.字母开头、字母或数字结尾的字母数字以及减号、点号、下划线的任意组合。如qw-er.s1_abc

2.字符中间出现特殊符号的连续组合,如u.--..__.4

(2)无效等价类:

1.输入除了点号、减号、下划线之外的其他特殊字符

2.输入中文、全角字符数字

3.输入中有空格(前/中/后、全半角空格),前面的空格能不能自除

4.为空

(3)特殊情况

1.数字、下划线、减号和点号开头(都要试一遍)

2.下划线、减号和点号结尾(都要试一遍)

3.输入含有大写字母

4.字符超长

“@”和最后一个“.”之间部分

(1)有效等价类:字母或数字开头和结尾的字母数字以及减号、点号的任意组合。如qw-er.s1

(2)无效等价类:

1.输入中有连续多个点号

2.首位为点号(即@后跟点号)

3.输入中文、全角字符数字

4.输入中有空格(前/中/后、全半角空格)

5.为空

(3)特殊情况:

1.输入中有下划线或大写字母

2.下划线和减号开头/结尾

3.字符中间出现特殊符号的连续组合,如u.--..__.4

4.字符超长

最后一个“.”后面的部分

(1)有效等价类:2位或3位小写字母

(2)无效等价类:

1.输入中有特殊字符、中文、数字、全角字符

2.输入空格(前/中/后、全半角空格),末尾的空格能不能自除

3.为空

(3)特殊情况:

1.1位、4位、5位及大于5位的字母

2.2位或3位大写字母

其他:

1.没有“@”或“.”

2.有多个@,连续或不连续

3.整体邮箱字符超长

域名(domainname):是由一串用点分隔的名字组成的internet上某一台计算机或计算

机组的名称,用于在数据传输时标识计算机的电子方位。域名是一个ip地址上有“面

具”。一个域名的目的是便于记忆和沟通一组服务器的地址(网站,电子邮件,ftp

等)。在中华网库每一个域名的注册都是独一无二、不可重复的。因此在网络上域

名是一种相对有限的资源,它的价值将随着注册企业的增多而逐步为人们所重视。

域名是上网单位和个人在网络上的重要标识,起着识别作用,便于他人识别和

检索某一企业、组织或个人的信息资源,从而更好地实现网络上的资源共享。

dns(域名解析domainnameresolution)规定,域名中的标号都只由英文字母、

数字和连字符“-”组成,但开头及结尾均不能含有“-”,每一个标号不超过63个字符,

也不区分大小写字母。由多个标号组成的完整域名总共不超过255?个字符。

级别最低的域名写在最左边,而级别最高的域名写在最右边。最右边的为顶级

域名,分为国际顶级域名(如表示工商企业的.com,表示网络提供商的.net,表示

非盈利组织的.org等)和国家顶级域名(如中国是cn,美国是us,日本是jp等);二

级域名是指顶级域名之下的域名,在国际顶级域名下,它是指域名注册人的网上名

称,例如ibm,yahoo,microsoft等,在国家顶级域名下,它是表示注册企业类别的

符号,例如com,edu,gov,net等;三级域名用字母(a~z,a~z)、数字(0~

9)和连接符“-”组成,各级域名之间用实点“.”连接,三级域名的长度不能超过20个

字符?。

测试用例:

域名只由英文字母、数字和连接符“-”(即减号)组成,开头及结尾均不能含有“-”、大小写不敏感、有字符限制。

(1)有效等价类:

1.不以减号“-”开头和结尾,输入小写字母、数字和“-”的任意组合。

(2)无效等价类:

1.以减号“-”开头或结尾

2.输入中有其他特殊字符

3.输入中有中文、全角字符

4.输入中有空格(前/中/后、全半角空格)

5.输入超长(参考需求,如三级域名20个字符)

(3)特殊情况:

1.域名输入大写字母,按照需求测试大写字母是否自动转化,还可能测试域名是否因大小写重复

(这里特指18位的身份证,比较粗略的测试)

身份证号:居民身份证号码是特征组合码,由十七位数字本体码和一位数字校验码组成。

排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字

顺序码和一位数字校验码。

地址码:表示编码对象常住户口所在县(市、镇、区)的行政区划代码。若想严格验证则按照“gb/t2260”规定执行(比如银行、12306的身份证号验证就非常严格)。

出生日期码:八位年月日格式,按“gb/t7408”规定执行。前4位表示一个正确的年份(如1900~2015年,不能超过当前年份);中间2位表示01~12月,最后2位表示01~31日;日期还要遵循大月小月、闰年平年的规则。

顺序码:000~999的纯数字。其中最后一位奇数分给男性,偶数分给女性。

数字校验码:0~9数字或x,按照一定规则计算得出

测试用例:

地址码:

(1)有效等价类:参考具体行政区划得出6位数字,如330183

(2)无效等价类:

1.以0或9开头的6位数字

2.。。。(根据具体需求设计数字的无效等价类)

3.非6位数字(包括空格)

出生日期码:

(1)有效等价类:

1.随机抽取几个正确的日期

2.平年、大月(1、3、5、7、8、10、12)测30号和31号

3.平年、小月(4、6、9、11)测30号

4.平年、2月测28号

5.闰年、2月测29号

6.较早年份,如1900年(视需求而定)

7.较近年份,如20151221(当天日期,视需求而定)

8.01月、12月、01号、31号的有效日期

(2)无效等价类:

1.平年、大月测32号

2.平年、小月测31号

3.平年、2月测29号、30、31号

4.闰年、2月测30号、31号

5.00月、13月及以上、00号、32号及以上

6.当前年份+1,如2016年

7.非8位数字(包括空格)

顺序码:

(1)有效等价类:

1.000~999的奇数

2.000~999的偶数

(2)无效等价类:非3位数字(包括空格)

数字校验码:

(1)有效等价类:

1.按照一定规则计算前17位得出(视需求而定)

2.0~9

3.x或x(大小写限制视需求而定)

(2)无效等价类:

1.非1位数字(包括空格)

2.非x和x的字母

其他(整体)无效等价类:

1.17位数字、19位数字

2.号码中含有特殊字符、中文、字母(除最后一位是x或x)、全角字符、空格

下一篇: Java邮箱验证
相关文章
{{ v.title }}
{{ v.description||(cleanHtml(v.content)).substr(0,100)+'···' }}
你可能感兴趣
推荐阅读 更多>
推荐商标

{{ v.name }}

{{ v.cls }}类

立即购买 联系客服