阿七 发表于 2009-4-8 10:17:31

用户名密码的测试方法(别小看哦)






别小看了这个用户名密码这么简单的输入框。可测试的内容还是很多的,并且引发的问题也有很多种类。下面就说一说他的测试方法。

一、用户注册

只从用户名和密码角度写了几个要考虑的测试点,如果需求中明确规定了安全问题,Email,出生日期,地址,性别等等一系列的格式和字符要求,那就都要写用例测了~

以等价类划分和边界值法来分析

1.填写符合要求的数据注册: 用户名字和密码都为最大长度(边界值分析,取上点)

2.填写符合要求的数据注册 :用户名字和密码都为最小长度(边界值分析,取上点)

3.填写符合要求的数据注册:用户名字和密码都是非最大和最小长度的数据(边界值分析,取内点)

4.必填项分别为空注册

5.用户名长度大于要求注册1位(边界值分析,取离点)

6.用户名长度小于要求注册1位(边界值分析,取离点)

7.密码长度大于要求注册1位(边界值分析,取离点)

8.密码长度小于要求注册1位(边界值分析,取离点)

9.用户名是不符合要求的字符注册(这个可以划分几个无效的等价类,一般写一两个就行了,如含有空格,#等,看需求是否允许吧~)

10.密码是不符合要求的字符注册(这个可以划分几个无效的等价类,一般写一两个就行了)

11.两次输入密码不一致(如果注册时候要输入两次密码,那么这个是必须的)

12.重新注册存在的用户

13.改变存在的用户的用户名和密码的大小写,来注册。(有的需求是区分大小写,有的不区分)

14.看是否支持tap和enter键等;密码是否可以复制粘贴;密码是否以* 之类的加秘符号显示

备注:边界值的上点、内点和离点大家应该都知道吧,呵呵,这里我就不细说了~~

二、修改密码

当然具体情况具体分析哈~不能一概而论~

实际测试中可能只用到其中几条而已,比如银行卡密码的修改,就不用考虑英文和非法字符,更不用考虑那些TAP之类的快捷键。而有的需要根据需求具体分析了,比如连续出错多少次出现的提示,和一些软件修改密码要求一定时间内有一定的修改次数限制等等。

1.不输入旧密码,直接改密码

2.输入错误旧密码

3.不输入确认新密码

4.不输入新密码

5.新密码和确认新密码不一致

6.新密码中有空格

7.新密码为空

8.新密码为符合要求的最多字符

9.新密码为符合要求的最少字符

10.新密码为符合要求的非最多和最少字符

11.新密码为最多字符-1

12.新密码为最少字符+1

13.新密码为最多字符+1

14.新密码为最少字符-1

15.新密码为非允许字符(如有的密码要求必须是英文和数字组成,那么要试汉字和符号等)

16.看是否支持tap和enter键等;密码是否可以复制粘贴;密码是否以* 之类的加秘符号

17.看密码是否区分大小写,新密码中英文小写,确认密码中英文大写

18.新密码与旧密码一样能否修改成功

另外一些其他的想法如下:

1 要测试所有规约中约定可以输入的特殊字符,字母,和数字,要求都可以正常输入、显示正常和添加成功

2 关注规约中的各种限制,比如长度,大否支持大小写。

3 考虑各种特殊情况,比如添加同名用户,系统是否正确校验给出提示信息,管理员帐户是否可以删除,因为有些系统管理员拥有最大权限,一旦删除管理员帐户,就不能在前台添加,这给最终用户会带来很多麻烦。比较特殊的是,当用户名中包括了特殊字符,那么对这类用户名的添加同名,修改,删除,系统是否能够正确实现,我就遇到了一个系统,添加同名用户时,如果以前的用户名没有特殊字符,系统可以给出提示信息,如果以前的用户名包含特殊字符,就不校验在插入数据库的时候报错。后来查到原因了,原来是在java中拼SQL语句的时候,因为有"_",所以就调用了一个方法在“_”,前面加了一个转义字符,后来发现不该调用这个方法。所以去掉就好了。所以对待输入框中的特殊字符要多关注。


4 数值上的长度 之类的,包括出错信息是否合理
5 特殊字符:比如。 / ' " \ </html> 这些是否会造成系统崩溃

6 注入式bug:比如密码输入个or 1=1

7 登录后是否会用明文传递参数

8 访问控制(不知道这个算不算):登录后保存里面的链接,关了浏览器直接复制链接看能不能访问。


美元测试 发表于 2009-4-16 15:47:07

写的很详细,不过更重要的是要理解为什么要设计出这样的用例来~
这样才能一通百通,不局限于用户名密码的测试了~

TLover 发表于 2009-4-8 10:37:05

很详细很周全!
顶了...

hongyan 发表于 2009-4-8 11:22:10

分析的很细,顶一下!

cdtest 发表于 2009-4-8 12:36:31

谢谢分享。

yuandjing 发表于 2009-4-8 12:43:54

很不错,这种东西就要积累,你的这份和我的很像,一旦遇到文本框马上就会有这些测试用例

h_wCrazy 发表于 2009-4-8 16:03:14

很好,谢谢:)

lwen 发表于 2009-4-8 19:18:37

很详细!!厉害厉害!!

qinkun26911615 发表于 2009-4-8 19:55:14

谢谢楼主分享!面试中举了好几次这个例子,但说的比较少,楼主的非常全,收了:lol

阿七 发表于 2009-4-9 11:41:07

:)

TONYWON 发表于 2009-4-9 12:05:51

正好i要用
谢啦:lol

tm123 发表于 2009-4-13 12:20:12

小七是全才。。:handshake

阿七 发表于 2009-4-13 14:40:52

我是菜鸟来的

fishy 发表于 2009-4-15 18:35:36

网上流传已久。。。不过的确很经典

cdxfujian 发表于 2009-4-17 09:29:07

很详细 ,顶上去

小飞侠007 发表于 2009-4-17 17:57:46

LZ写的好详细啊,从没写过这么详细呢,谢了,分享了!

goodgoodsutdy 发表于 2009-4-17 18:08:05

佩服,居然写这么详细,牛!

stawberry 发表于 2009-4-20 22:55:15

楼主写得很详细啊,谢谢分享!

x1j2l3 发表于 2009-4-20 23:41:04

嗯不错不错 ;P

jameshey 发表于 2009-5-7 21:12:59

好贴,偶先收下了
页: [1] 2 3 4 5 6 7
查看完整版本: 用户名密码的测试方法(别小看哦)