- 软件测试实验实训指南
- 陈英
- 1518字
- 2021-03-23 22:37:07
3.16 实验#16:testaspnet网站已注册账户无法登录
缺陷标题 testaspnet网站成功注册账户无法登录网站。
测试平台与浏览器 Windows 7+Firefox。
测试步骤
(1)打开testaspnet网站主页http://testaspnet.vulnweb.com/。
(2)单击signup,成功注册一个账户,如图3-23所示,然后尝试登录。
图3-23 注册账户
期望结果 登录成功。
实际结果 登录后回到登录页面,没有任何提示,如图3-24所示。
专家点评
既然提示账户创建成功,就应该能成功登录,如果登录不了,也应该提示登录不成功的原因,但是此例没有任何提示却登录不成功,这可能是因为登录功能不起作用或者注册成功的页面是假的。
对于登录测试,一般需要考虑如下几点。
1.基本功能测试点
(1)输入正确的用户名和密码时登录成功。
图3-24 使用注册成功的账户和密码登录失败
(2)输入错误的用户名和密码时登录失败。
(3)用户名或密码都错误时是否有相应提示。
(4)用户名或密码为空时是否有相应提示。
(5)如果用户未注册,提示请先注册,然后登录。
(6)已经注销的用户登录失败,提示信息是否友好。
(7)密码框是否加密显示。
(8)用户名是否支持中文、特殊字符。
(9)用户名是否有长度限制。
(10)密码是否支持中文和特殊字符。
(11)密码是否有长度限制。
(12)密码是否区分大小写。
(13)密码为一些简单常用字符串(如123456)时,是否提示修改。
(14)密码存储方式是否加密。
(15)登录功能是否需要输入验证码。如果是,需要继续测试验证码,如下所示。
①验证码有效时间。
②验证码输入错误,登录失败,提示信息是否友好。
③输入过期的验证能否登录成功。
④验证码是否容易识别。
⑤更换验证码功能是否可用,单击验证码图片是否可以更换验证码。
(16)用户权限。比如系统分普通用户、高级用户,不同用户登录系统后的权限不同。
(17)如果使用第三方账户(QQ、微博账户)登录,那么第三方账户与本系统的账户体系对应关系如何保存,首次登录需要授权确认等。
2.页面测试
(1)登录页面显示是否正常;文字和图片能否正常显示,相应的提示信息是否正确,按钮的设置和排列是否正常,页面是否简洁等。
(2)页面默认焦点是否定位在用户名的输入框中。
(3)首次登录时相应的输入框是否为空;或者如果有默认文本,当单击输入框时默认文本是否消失。
(4)相应的按钮(如登录、重置等)是否可用;页面的前进、后退、刷新按钮是否可用。
(5)快捷键Tab、Esc、Enter等能否控制使用。
(6)兼容性测试:不同浏览器、不同操作系统、不同分辨率下界面是否正常。
3.安全测试
(1)不登录:浏览器中直接输入登录后的地址,看是否可以直接进入。
(2)登录成功后生成的Cookie是否httponly(否则容易被脚本盗取)。
(3)用户名和密码是否通过加密的方式发送给Web服务器。
(4)用户名和密码的验证应该是用服务器端验证,而不能仅在客户端用JavaScript验证。
(5)用户名和密码的输入框应该屏蔽SQL注入攻击。
(6)用户名和密码的输入框应该禁止输入脚本(防止XSS攻击)。
(7)错误登录的次数限制(防止暴力破解)。
(8)是否支持多用户在同一机器上登录。
(9)是否支持一用户在多台机器上登录。
4.性能测试
(1)压力:大量并发用户登录时系统的响应时间是多少;系统是否会出现死机、内存泄漏、CPU饱和、无法登录。
(2)稳定性:系统能否处理并发用户数在临界点以内连续登录多个用户时的场景。
5.其他测试
(1)连续输入3次或3次以上错误密码,用户是否被锁一定时间(如15min);是否该时间内不允许登录,超出时间后可以继续登录。
(2)用户session过期后,重新登录能否重新返回之前session过期的页面。
(3)用户名和密码输入框是否支持键盘快捷键(如撤销、复制、粘贴等)。
(4)是否允许同名用户同时登录进行操作(考虑Web和APP同时登录)。
(5)手机登录时,是否先判断网络可用。
(6)手机登录时,是否先判断APP存在新版本。
(7)是否支持单点登录SSO。