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

转:https://blog.csdn.net/mr_lady/article/details/50245223

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

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

1.手机号码

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

手机号码我国使用的手机号码为11(1999722日从10全面升级为11位),其

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

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

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

                中,在MAP接口上传送。

     其中MDN号码的结构如下:CC + MAC + H0 H1 H2 H3 + ABCD

              CC】:国家码,中国使用86+86)。
              MAC】:移动接入码,本网采用网号方案,为133
              H0H1H2H3】:HLR识别码,由运营商统一分配。
              ABCD】:移动用户号,由各HLR自行分配。

       MAC网络识别号:

            电信
                  2G/3G号段(CDMA2000网络)133153180181189
                  4G号段 177
             联通
                 2G号段(GSM网络)130131132155156
                 3G上网卡145
               3G号段(WCDMA网络)185186
                 4G号段 176185
            移动
                 2G号段(GSM网络)134x0-8)、135136137138139

    150151152158159182183184
                 3G号段(TD-SCDMA网络)157187188
                 3G上网卡 147
                 4G号段 178
             补充Tips
                 14号段以前为上网卡专属号段,如中国联通的是145,中国移动的是147

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

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

         “1709” 为中国联通。

                 卫星通信 1349(忽略不计)

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

测试用例

     (1)有效等价类:13\14\15\17\18开头的11位纯数字

     (2)无效等价类:

          1. 位数不等于11

          2. 全角数字

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

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

          5. 不以13\14\15\17\18开头。如10、12、63开头


2.固定电话号码

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

电话号码:电话号码是电话管理部门为电话机设定的号码。为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. 号码包含空格(前/中/后、中英文/全半角空格)


3.邮箱

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

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

          @后标注,—个完整的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.整体邮箱字符超长

  

4.域名

域名(Domain Name)是由一串用点分隔的名字组成的Internet上某一台计算机或计算

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

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

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

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

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

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

                DNS (域名解析domain name resolution)规定,域名中的标号只由英文字母、

         数字和连字符“-组成,但开头及结尾均不能含有“ - ”,每一个标号不超过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.域名输入大写字母,按照需求测试大写字母是否自动转化,还可能测试域名是否因大小写重复


5.身份证号

(这里特指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)、全角字符、空格

         3.为空

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页