测试用例设计之-----登陆页面
(整理自网络,便于翻阅)
需求:
以B/S机构系统的登陆页面,有一个账号和密码输入框,一个提交Button。
考察点:
1、了解需求(测什么都是从了解需求开始);
2、是否有设计Test Case的能力
3、是否熟悉各种测试方法;
4、是否有丰富的Web测试经验;
5、是否了解Web开发;
了解需求:
测试需求分析的过程,可以从质量要求出发展开测试需求分析,如从功能、性能、安全性、兼容性等各个质量要求出发,不断细化其内容,挖掘对应测试用例,覆盖质量要求。也可以从开发需求(如产品功能特性点、敏捷开发的用户故事)出发,针对每一条开发需求形成已分解的测试项,结合质量要求,这些测试项再扩展为测试任务,这些测试任务包括了具体的功能性测试任务和非功能性测试任务。在整理测试需求时,需要分类、细化、合并并按照优先级进行排序,形成测试需求列表。
1、登录界面应该是弹出窗口式的,还是直接在网页里面;
2、账号长度和密码的强度(比如需要多少位、大小写敏感、特殊字符混搭等);
3、界面美观是否有特殊要求?(即是否要进行UI测试);
4、····
用例设计:
设计测试用例主要从以下几个方面考虑:
功能测试、界面测试、性能测试、安全性测试、可用性测试、兼容性测试、本地化测试、软件辅助性测试等
功能性测试:
1、输入正常的账号和密码,点击提交Button,验证是否能正常登陆(正常输入)
2、输入错误账号或密码,验证登陆失败,并提示相关错误信息(错误校验)
正确的用户名与错误的密码、错误的用户名与正确的密码、错误的用户名与错误的密码;
3、登陆成功后能否跳转至正确界面
4、账号和密码,如果太短或者太长,应该怎么处理(安全性,密码太短时是否有提示)
5、账号和密码,中有特殊字符(比如空格),和其他非英文的情况(是否做了过滤)
6、记住账号的功能
7、登录失败后,不能记录密码的功能
8、账号和密码前后有空格的处理
9、密码是否加密显示(星号圆点等)
10、牵扯到验证码的,还要考虑文字是否扭曲过度导致辨认难度大,考虑颜色(色盲使用者),刷新或换一个按钮是否好用
11、登录页面中的注册、忘记密码,登出用另一帐号登录等链接是否正确
12、输入密码的时候,大写键盘开启的时候要有提示信息。
13、飞控检查,点击提交按钮,看提示信息。(非空检查)
空的用户名和空的密码、正确的用户名和空的密码、空的用户名和正确的密码;
界面测试:
1、布局是否合理,2个Testbox 和一个Button是否对齐
2、Testbox和Button的长度,高度是否符合要求
3、界面的设计风格是否与UI的设计风格统一
4、界面中的文字简洁易懂,没有错别字。
性能测试:
1、打开登录页面,需要几秒
2 、输入正确的账号和密码后,登录成功跳转到新页面,不超过5秒
安全性测试:
1、登录成功后生成的Cookie是否有HttpOnly(降低脚本盗取风险)
2、账号和密码是否通过加密的方式,发送给Web服务器
3、账号和密码的验证,应该是用服务器端验证,而不能单单是在客户端用javaScript验证
4、账号和密码的输入框,应该屏蔽SQL注入攻击
5、账号和密码的的输入框,应该禁止输入脚本(防止XSS攻击)
输入特殊字符串(null,NULL,javascript,<script>,</script>,<title>,<html>,<td>)、输入脚本函数(<script>alert("abc")</script>)、doucment.write("abc")、<b>hello</b>);
6、错误登录的次数限制(防止暴力破解)
7、考虑是否支持多用户在同一机器上登录;
8、考虑一用户在多台机器上登录
可用性测试:
1、是否可以全用键盘操作,是否有快捷键
2、输入账号,密码后按回车,是否可以登录
3、输入框是否可以以Tab键切换
4、考虑多次点击登录和取消按钮的界面反应
兼容性测试:
1、主流的浏览器下能否显示正常已经功能正常(IE6~11, FireFox, Chrome, Safari 等 )
2、不同的平台是否能正常工作,比如Windows, Mac
3、移动设备上是否正常工作,比如iPhone, Android
4、不同的分辨率
本地化测试:
1、不同的语言环境下,页面的显示是否正确
软件辅助性测试:
软件辅助功能测试是指测试软件是否向残疾用户提供足够的辅助功能
1、高对比度下能否显示正常(视力不好的人使用)