用户登录如何设计测试用例?
(一)
a.输入已注册的用户名和正确的密码,验证是否登录成功;
b.输入已注册的用户名和不正确的密码,验证是否登录失败,提示信息是否正确;
c.输入未注册的用户名和任意密码,验证是否登录失败,提示信息是否正确;
d.用户名和密码两者都为空,验证是否登录失败,提示信息是否正确;
e.用户名和密码两者之一为空,验证是否登录失败,提示信息是否正确;
f.如果登录功能启用了图片验证码功能,在用户名和密码正确的前提下,输入正确的图片验证码,验证是否登录成功;
g.用户名和密码两者都为空,验证是否登录失败,提示信息是否正确;
h.如果登录功能启用了图片验证码功能,在用户名和密码正确的前提下,输入错误的图片验证码,验证是否登录失败,并且提示信息正确
(二)
a.用户名和密码是否大小写敏感;
b.页面上的密码框是否加密显示;
c.用户名和密码是否大小写敏感;
d.忘记用户名和忘记密码的功能是否可用;
e.前端页面是否根据设计要求限制用户名和密码长度;
f.点击验证码图片是否可以更换图片验证码,更换的图片验证码是否可用;
g.刷新页面是否会刷新图片验证码;
h.如果图片验证码具有时效性,需要分别验证时效内和时效外验证码的有效性;
i.用户登录成功但是会话超时后,继续操作是否会重定向到用户登录界面;
j.不同级别的用户,比如管理员用户和普通用户,登录系统后的权限是否符合要求。
兼容性测试用例:
a.在相同浏览器的不同版本中,验证用户登录页面的显示以及功能是否正确;
b.在不同浏览器中,验证用户登录页面的显示以及功能是否正确;
c.在不同移动设备的不同浏览器中,验证用户登录页面的显示以及功能是否正确;
d.在不同分辨率的界面下,验证用户登录页面的显示以及功能是否正确;
性能压力测试用例:
a.单用户登录的响应时间是否小于3秒;
b.单用户登录时,后台请求数量是否过多;
c.高并发场景下用户登录的响应时间是否小于5秒;
d.高并发场景下服务端的监控指标是否符合预期;
e.高集合点并发场景下,是否存在资源死锁和不合理的资源等待;
f.长时间大量用户连续登录和登出,服务器端是否存在内存泄漏。
安全性测试用例:
a.用户密码在网络传输过程中是否加密;
b.后台数据库存储的密码是否加密;
c.密码是否具有有效期,密码有效期到期后,是否提示需要修改密码;
d.密码输入框内输入的密码是否可以在页面源码模式下被查看;
e.密码输入框是否不支持复制和粘贴;
f.用户名和密码的输入框中分别输入典型的“SQL注入攻击”字符串,验证系统的返回页面;
g.不登录的情況下,在浏览器中直接输入需要登录后才能访问的URL地址,验证是否会重新定向到用户登录界面;
h.用户名和密码的输入框中分別输入典型的“XSS跨站脚本攻击”字符串,验证系统行为是否被篡改,连续多次登录失败情況下,系统是否会阻止后续的尝试,以防止暴力破解;
i.同一用户先后在多台终端的浏览器上登录,验证登录是否具有互斥性;
j.同一用户在同一终端的多种浏览器上登录,验证登录功能的互斥性是否符合设计预期。