给你一个登陆,如何测试

面试一个题目登录功能,而且不同系统代码设计方式都有所差异,所以就这个登录功能而言就要测试四次,看似一个简单的登录功能其中设计的测试点也是相当复杂

一.了解平台

首先你需要了解平台设计结构,是前后端分离还是不分离。

了解这个主要是涉及到用户登录缓存数据的一个存储。这就需要了解session,cookie,Token之间的区别。

目前我们的二个平台,有一个平台是做的前后端分离,因为前后端分离是无状态的,就没有session,必须有权限认证,有可能是Token,也有可能是其它(Oauth/Bearer Token等),这里我们的系统用的是Token(令牌)认证。

而未做前后端分离的平台,是将登录信息临时存储在cookie中,明白了这些那在测试过程就需要对这一部分的鉴权做测试。

Cookie数据存放在客户的浏览器中.

Session数据存放在服务器中。

Token用户身份的验证方式。

 

二.分析登录模块的测试点

一般来说登录模块的功能点都比较简单。大致分为用户名、密码、忘记密码、记住用户名以及按钮。

除了分析功能点之外,我们还需要考虑以下几个点:

1.权限认证

这个主要是指cookie、Token失效,操作菜单产生什么样的结果。

2.横向越权

指AB二个用户拥有相同的权限,然后A用户尝试访问B用户的资源。

另外还有一个是纵向越权,是低级别用户的权限去访问高级别用户的资源。

三.设计测试用例

设计功能点的测试用例

我们的系统不做记住用户和忘记密码的功能,所以针对这二个功能未设计测试点。

1、功能测试

        0. 什么都不输入,点击提交按钮,看提示信息。

  1.输入正确的用户名和密码,点击提交按钮,验证是否能正确登录。

  2.输入错误的用户名或者密码, 验证登录会失败,并且提示相应的错误信息。

  3.登录成功后能否能否跳转到正确的页面

  4.用户名和密码,如果太短或者太长,应该怎么处理

  5.用户名和密码中有特殊字符(比如空格),和其他非英文的情况

  6.记住用户名的功能

  7.登陆失败后,不能记录密码的功能

  8.用户名和密码前后有空格的处理

      9.密码是否加密显示(星号圆点等)

     10.牵扯到验证码的,还要考虑文字是否扭曲过度导致辨认难度大,考虑颜色(色盲使用者),刷新或换一个按钮是否好用

     11.登录页面中的注册、忘记密码,登出用另一帐号登陆等链接是否正确

     12.输入密码的时候,大写键盘开启的时候要有提示信息

2.安全测试

  1.登录成功后生成的Cookie,是否是httponly (否则容易被脚本盗取)

  2.用户名和密码是否通过加密的方式,发送给Web服务器

  3.用户名和密码的验证,应该是用服务器端验证, 而不能单单是在客户端用javascript验证

  4.用户名和密码的输入框,应该屏蔽SQL 注入攻击

  5.用户名和密码的的输入框,应该禁止输入脚本 (防止XSS攻击)

  6.错误登陆的次数限制(防止暴力破解)

       7. 考虑是否支持多用户在同一机器上登录;

       8. 考虑一用户在多台机器上登录

3.界面测试

在测试过程中,我们不仅要关注功能点是否按照需求已经实现了,同时我们还需要关注界面和用户体现性,需要进行界面和体现方面的测试。

在测试界面中,主要测试以下内容:

  1.布局是否合理,2个testbox 和一个按钮是否对齐

  2.testbox和按钮的长度,高度是否符合要求

       3. 界面的设计风格是否与UI的设计风格统一

       4. 界面中的文字简洁易懂,没有错别字。

       5.提示用户名、密码输入框是否有默认提示内容;

         输入错误的用户名或密码是否给出了正确的提示,提示的文字、大小、颜色是否按需求描述(如果需求中没有明确指出,             那可以借鉴其它网站相同功能的提示风格);

         用户名和密码是否是必填的,如果是必填的,是否用红色星号表示(通用规则);

         输入为空时,给出的提示是否正确。

         密码显示:密码是否是密文显示,如果需求中规定了可支持明文显示,显示有相应的控件。

4.  可用性测试

  1. 是否可以全用键盘操作,是否有快捷键

  2. 输入用户名,密码后按回车,是否可以登陆

       3. 输入框能否可以以Tab键切换

5.兼容性测试

  1.主流的浏览器下能否显示正常已经功能正常(IE,6,7,8,9, Firefox, Chrome, Safari,等)

  2.不同的平台是否能正常工作,比如Windows, Mac

  3.移动设备上是否正常工作,比如Iphone, Andriod

  4.不同的分辨率

6.性能测试

  1.打开登录页面,需要几秒

  2.输入正确的用户名和密码后,登录成功跳转到新页面,不超过5秒

       3.并发测试,压力测试

 

 

  • 8
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值