具体需求: 有一个登录页面, (假如上面有2个textbox, 一个提交按钮。 请针对这个页面设计30个以上的test case.)
此题的考察目的: 面试者是否熟悉各类测试方法,是否有丰富的Web测试经验, 是否了解Web开发,以及设计Test case的能力
这个题目仍是至关有难度的, 通常的人很难把这个题目回答好。
首先,你要了解用户的需求,好比这个登陆界面应该是弹出窗口式的,仍是直接在网页里面。对用户名的长度,和密码的强度(就是是否是必须多少位,大小写,特殊字符混搭)等。还有好比用户对界面的美观是否是有特殊的要求?(便是否要进行UI测试)。剩下的就是设计用例了 ,等价类,边界值等等。
请你记住一点,任何测试,无论测什么都是从了解需求开始的。
功能测试(Function test)
0. 什么都不输入,点击提交按钮,看提示信息。
1.输入正确的用户名和密码,点击提交按钮,验证是否能正确登陆。
2.输入错误的用户名或者密码, 验证登陆会失败,而且提示相应的错误信息。
3.登陆成功后可否可否跳转到正确的页面
4.用户名和密码,若是过短或者太长,应该怎么处理
5.用户名和密码,中有特殊字符(好比空格),和其余非英文的状况
6.记住用户名的功能
7.登录失败后,不能记录密码的功能
8.用户名和密码先后有空格的处理
9.密码是否加密显示(星号圆点等)
10.牵扯到验证码的,还要考虑文字是否扭曲过分致使辨认难度大,考虑颜色(色盲使用者),刷新或换一个按钮是否好用
11.登陆页面中的注册、忘记密码,登出用另外一账号登录等连接是否正确
12.输入密码的时候,大写键盘开启的时候要有提示信息。
界面测试(UI Test)
1.布局是否合理,2个testbox 和一个按钮是否对齐
2.testbox和按钮的长度,高度是否复合要求
3. 界面的设计风格是否与UI的设计风格统一
4. 界面中的文字简洁易懂,没有错别字。
性能测试(performance test)
1.打开登陆页面,须要几秒
2.输入正确的用户名和密码后,登陆成功跳转到新页面,不超过5秒
安全性测试(Security test)
1.登陆成功后生成的Cookie,是不是httponly (不然容易被脚本盗取)
2.用户名和密码是否经过加密的方式,发送给Web服务器
3.用户名和密码的验证,应该是用服务器端验证, 而不能单单是在客户端用javascript验证
4.用户名和密码的输入框,应该屏蔽SQL 注入攻击
5.用户名和密码的的输入框,应该禁止输入脚本 (防止XSS攻击)
6.错误登录的次数限制(防止暴力破解)
7. 考虑是否支持多用户在同一机器上登陆;
8. 考虑一用户在多台机器上登陆
可用性测试(Usability Test)
1. 是否能够全用键盘操做,是否有快捷键
2. 输入用户名,密码后按回车,是否能够登录
3. 输入框可否能够以Tab键切换
兼容性测试(Compatibility Test)
1.主流的浏览器下可否显示正常已经功能正常(IE,6,7,8,9, Firefox, Chrome, Safari,等)
2.不一样的平台是否能正常工做,好比Windows, Mac
3.移动设备上是否正常工做,好比Iphone, Andriod
4.不一样的分辨率
本地化测试 (Localization test)
1. 不一样语言环境下,页面的显示是否正确。
软件辅助性测试 (Accessibility test)
软件辅助功能测试是指测试软件是否向残疾用户提供足够的辅助功能
1. 高对比度下可否显示正常 (视力很差的人使用)javascript