具体要求:有一个账号,一个密码输入框,一个提交按钮,考察目的
1.了解需求
2.是否具有设计用例的能力
3.是否熟悉各种测试方法
4.是否有丰富的web测试经验
1.了解需求:
测试需求分析过程,可以从质量要求出发,来展开测试需求分析,从功能,性能,安全性,兼容性等各个质量要求出发,不断细化其内容,挖掘对应的测试需求,覆盖质量要求,也可从开发需求出发,把每一条开发需求分解为测试项,结合质量要求,这些测试项再分解成测试任务,则包括功能性测试任务和非功能性测试任务,在整理测试需求时,需要分类,细化,合并,并按照优先级进行排列,形成测试需求列表
1> 登录界面应该是弹出框,还是直接显示在网页里面
2>账号和密码的长度(eg:长度,大小写敏感,特殊字符混搭)
3>界面美观是否有特殊需求(UI测试)
2.用例设计:
功能测试:
1>输入正确的用户名密码,点击提交按钮,验证能否正确登录
2> 输入错误的用户名或者密码,点击提交按钮,验证登录失败,提示相应的错误信息
3 >登录成功后能否跳转到正确的页面
4>账号名或者密码长度过长或者过短,应该怎么处理(安全性,密码太短是否有提示)
5>账号和密码有特殊字符(空格),是否做了过滤
6>密码是否加密显示
7>输入密码 ,大写键盘开启的时候要有提示信息
8>什么都不输入,直接点击提交(非空检查)
9>登录失败后,不能记住密码的功能
10>登录页面中忘记密码等等链接跳转是否正确
11>牵扯到验证码,还要考虑文字是否扭曲过度导致辨认难度大
UI测试:
1>布局是否合理,两个textbox和一个按钮是否对齐
2>textbox的长度和高度是否符合要求
3>界面设计风格和UI设计风格是否一致
4>界面中的文字简洁易懂,没有错别字
性能测试:
1>打开登录界面,需要几秒
2>输入正确的用户名和密码,登录成功跳转到新页面,需要几秒
安全性测试:
1>登录成功后的cookie是否有HttpOnly(降低脚本风险)
2>账号和密码是否通过加密的方式,发送给web服务器
3>账号和密码的验证,应该是用服务器验证,而不单单是在客户端用javaScript验证
4>账号和密码的输入框,应该屏蔽SQL注入攻击
5>账号和密码的输入框,应该禁止输入脚本(防止XSS攻击)
6>错误登录的次数限制(防止暴力破解)
7>是否支持多用户在同一台机器上登录
8>一用户在多台机器上登录
可用性测试:
1>输入框是否可以用tab键切换
2>输入账号,密码后按回车,是否可以登录
3>是否可用全用键盘操作,是否有快捷键
兼容性测试:
1>主流的浏览器下能否显示正常已经功能正常
2>不同的平台是否能正常工作,eg:windows,mac
3>移动设备上是否正常工作,比如iphone,android
4>不同的分辨率