在以前的面试和同事面试交流的过程中,有多次被问到:“给你一个登录页面,上面有2个textbox,一个提交按钮,你将怎么测试”?或问,请针对这个页面设计30个以上的test case.

此题的考察目的:面试者是否熟悉各种测试方法,是否有丰富的Web测试经验,是否了解Web开发,以及设计Test case的能力。
 
随机回答:
仅从功能上说,应该关注
1.页面输出是否符合预期,包括页面元素展示,页面跳转;
2.数据落地是否正确,这个需要关注数据库相关数据表,精确到每一个字段;
3.日志查看,关注日志文件中整体数据流向是否合理

除了以上3点。针对一个功能还应该关注他背后的接口,也就是接口的输入输出是否正确,以及该功能涉及到的其他功能点,是否对已有功能且是相关性功能有非正常的影响

一、功能测试

  1. 输入正确的用户名和密码,点击提交按钮,验证是否能正确登录,登录成功后跳转至对应的页面;
  2. 输入错误的用户名或者错误的密码,点击提交会登录失败,并且有相应的错误提示框;
  3. 登录成功后能否能否跳转到正确的页面;
  4. 用户名和密码,如果太短或者太长,应该怎么处理;
  5. 用户名和密码,中有特殊字符,和其他非英文的情况,是否允许输入等;
  6. 用户名和密码前后有空格的处理;
  7. 密码是否以星号(*)显示;
  8. 记住用户名的功能(用户名和密码是否可以被浏览器记住)
  9. 登陆失败后,不能记录密码的功能;

二、界面测试

  1. 布局是否合理,2个testbox和一个按钮是否对齐;
  2. testbox和按钮的长度,高度是否复合要求;
  3. 界面是否好看;
  4. 图片,颜色,字体,超链接,是否都显示正确

三、性能测试

  1. 打开登录页面需要几秒
  2. 输入正确的用户名和密码后,登录成功后跳转到新页面不超过5S
  3. 能同时支持多少个用户同时登录

四、安全性测试

  1. 登录成功后生成的Cookie,是否是httponly (否则容易被脚本盗取);
  2. 用户名和密码是否通过加密的方式,发送给Web服务器;
  3. 用户名和密码的验证,登录完成后查看服务器日志验证正确,而不仅仅是前端JavaScript验证;
  4. 用户名和密码的输入框,应该屏蔽SQL注入攻击;
  5. 用户名和密码的的输入框,应该禁止输入脚本(防止XSS攻击);
  6. 错误登陆的次数限制(防止暴力破解);

五、可用性测试

  1. 是否可以用全键盘操作,是否有快捷键;
  2. 输入用户名和密码后按回车,是否可以登录;

六、兼容性测试

  1. 主流的浏览器下能否显示正常,并且功能正常(IE,7,8,9,10,Firefox, Chrome, Safari,等);
  2. 不同的平台是否能正常工作,比如Windows, Mac;
  3. 移动设备上是否正常工作,比如Iphone;

七、Andriod WEB测试

  1. 不同的分辨率;
  2. 不同的浏览器大小(浏览器最大化,和非最大化);
  3. 软件辅助性测试(Accessibility test)——软件辅助功能测试是指测试软件是否向残疾用户提供足够的辅助功能;
  4. 高对比度下能否显示正常(视力不好的人使用)

怎么测试一个web登录页面的更多相关文章

  1. 如何测试一个WEB的输入框?

    WEB输入框是B/S架构系统中页面使用非常频繁的控件,比如我们登录一个网站,输入 用户名和密码的控件都是输入框,比如使用百度搜索,在输入搜索内容的控件也是输入框,比如网购一个物品,我们需要输入购买的数 ...

  2. flutter 制作一个用户登录页面

    flutter 制作一个用户登录页面 用户登录效果图如下: 登录页面如下: import 'package:flutter/material.dart'; import 'package:flutte ...

  3. 【转载】拒绝平庸——浅谈WEB登录页面设计

    用户活跃度是检验产品成功与否的重要指标之一,传统行业的商家极为重视门面的装潢,因为一个好的门面可以聚集人气,招揽更多的顾客.古时候的大户人家院子门口的石狮子或其他的摆件的摆放极为讲究,有一定的风水学说 ...

  4. 拒绝平庸——浅谈WEB登录页面设计

    用户活跃度是检验产品成功与否的重要指标之一,传统行业的商家极为重视门面的装潢,因为一个好的门面可以聚集人气,招揽更多的顾客.古时候的大户人家院子门口的石狮子或其他的摆件的摆放极为讲究,有一定的风水学说 ...

  5. Vue.js实现一个SPA登录页面的过程

    技术栈 vue.js 主框架 vuex 状态管理 vue-router 路由管理 一般过程 在一般的登录过程中,一种前端方案是: 检查状态:进入页面时或者路由变化时检查是否有登录状态(保存在cooki ...

  6. Vue.js写一个SPA登录页面的过程

    技术栈 vue.js 主框架 vuex 状态管理 vue-router 路由管理 一般过程 在一般的登录过程中,一种前端方案是: 检查状态:进入页面时或者路由变化时检查是否有登录状态(保存在cooki ...

  7. HTML基础:用表单写一个简易登录页面

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  8. 【转】【Web测试】Web测试点页面总结整理

    转自:http://blog.csdn.net/qq_30044187/article/details/52442518 1.页面链接检查: 测试每一个链接是否都有对应的页面,并且页面之前可以正确切换 ...

  9. 基于原生的 html css js php ajax做的一个 web登录和注册系统

    完整代码下载: 百度网盘地址 https://pan.baidu.com/s/1D1gqHSyjgfoOtYCZm7ofJg 提取码 :nf0b 永久有效 注意: 1 如果要正常运行此示例, 本地需要 ...

随机推荐

  1. Java编程基本概念

    1.标识符 ①用于给变量.类和方法命名(类名首字母大写,变量和方法名首字母小写并遵循驼峰原则)②标识符的命名规范: ■标识符必须以字母.下划线和美元符$开头. ■标识符其他部分可以是字母.下划线.美元 ...

  2. 【linux】Centos下登陆mysql报错#1045 - Access denied for user 'root'@'localhost' (using password: NO)

    创建mysql  远程链接 grant all privileges on *.* to 'test'@"%" identified by "test666 with g ...

  3. Egret3D学习笔记一 (Unity插件使用)

    一 官方教程: http://developer.egret.com/cn/github/egret-docs/Engine3D/getStarted/getStarted/index.html 大部 ...

  4. mac java环境变量配置

    在终端输入java -version命令,如果没安装系统会自动弹出个东西让你安装,下载完之后打开,再点java -version,如果有显示就说明安装成功了. 在终端输入  ç 可以得到JAVA_HO ...

  5. MySQL Server has gone away报错原因汇总分析(转自:http://cenalulu.github.io/mysql/mysql-has-gone-away/)

    原因1. MySQL 服务宕了 判断是否属于这个原因的方法很简单,执行以下命令,查看mysql的运行时长 $ mysql -uroot -p -e "show global status l ...

  6. 问答项目---登陆账号密码登陆做AJAX异步校验

    异步验证管理员帐号方法: /* 异步验证管理员帐号 */ public function checkAccount(){ if(!IS_AJAX){echo "页面不存在";die ...

  7. MDK软件仿真常见问题

    一直不知道MDK该怎么仿真调试程序,之前试了好几次都没有成功.因为有个程序一直不知道里面的变量对应着外部怎么的模式,今天想起可以用仿真调试的方法查看当外部设置某种模式的时候, 内部变量的变化,这样想来 ...

  8. 试验性的Numpy教程(译)

    Python中Numpy模块学习: 转自:http://my.oschina.net/u/175377/blog/74406

  9. SQL Server使用 LEFT JOIN ON LIKE进行数据关联查询

    这是来新公司写的第一篇文章,使用LEFT JOIN ON LIKE处理一下这种问题: SQL视图代码如下: CREATE View [dbo].[VI_SearchCN] AS --搜索产品的文件 ( ...

  10. oracle goldengate技术架构-简单试验(全)

    一  GoldenGate简介 Oracle Golden Gate软件是一种基于日志的结构化数据复制备份软件,它通过解析源 数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库, ...