登录测试方法浅谈

 在做完美365登录校验时候,整理的以下若干问题:

用户注册一般从用户名和密码角度考虑测试点,如果需求中明确规定了安全问题,如:Email、出生日期、地址、性别等等一系列的格式和字符要求,那就要写测试用例了。在此,本文将就此问题从几个方面进行探讨。

一、功能测试用例设计

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

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

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

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

4、必填项分别为空注册。

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

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

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

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

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

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

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

12、重新注册存在的用户;

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

14、看是否支持tap和enter键等。

二、安全性测试用例设计

密码是否可以复制粘贴;密码是否以“*” 之类的加秘符号显示;修改密码当然具体情况具体分析,不能一概而论,实际测试中可能只用到其中几条而已,比如银行卡密码的修改,就不用考虑英文和非法字符,更不用考虑那些tab之类的快捷键。而有的需要根据需求具体分析了,比如连续出错多少次出现的提示,和一些软件修改密码要求一定时间内有一定的修改次数限制等等。比如:

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、访问控制:登录后保存里面的链接,关了浏览器直接复制链接看能不能访问。

以上是我针对登录测试用例发表的一点看法,供大家参考,希望大家能从中得到一点启发,也希望能和大家共同探讨。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

返回主页看更多
狠狠的抽打博主 支付宝 扫一扫