面试题:如何测试登录模块

发表于:2018-5-23 15:09  作者:王豆豆   来源:51Testing软件测试网采编

字体: | 上一篇 | 下一篇 |我要投稿 | 推荐标签: 软件测试技术 测试用例

  最近在做一个创新项目,这个项目有二个平台,每个平台都有前后端,故有四个系统,每个系统都有登录功能,而且不同系统代码设计方式都有所差异,所以就这个登录功能而言就要测试四次,看似一个简单的登录功能其中设计的测试点也是相当复杂,今天王豆豆就讲讲如何测试登录功能。
  1.了解平台
  首先你需要了解平台设计结构,是前后端分离还是不分离。
  了解这个主要是涉及到用户登录缓存数据的一个存储。
  这就需要了解session,cookie,Token之间的区别。
  目前我们的二个平台,有一个平台是做的前后端分离,因为前后端分离是无状态的,就没有session,必须有权限认证,有可能是Token,也有可能是其它(Oauth/Bearer Token等),这里我们的系统用的是Token(令牌)认证。
  而未做前后端分离的平台,是将登录信息临时存储在cookie中,明白了这些那在测试过程就需要对这一部分的鉴权做测试。
  Cookie数据存放在客户的浏览器中.
  Session数据存放在服务器中。
  Token用户身份的验证方式。
  2.分析登录模块的测试点
  一般来说登录模块的功能点都比较简单。大致分为用户名、密码、忘记密码、记住用户名以及按钮。
  除了分析功能点之外,我们还需要考虑以下几个点:
  1.权限认证
  这个主要是指cookie、Token失效,操作菜单产生什么样的结果。
  2.横向越权
  指AB二个用户拥有相同的权限,然后A用户尝试访问B用户的资源。
  另外还有一个是纵向越权,是低级别用户的权限去访问高级别用户的资源。
  3.设计测试用例
  1.设计功能点的测试用例
  我们的系统不做记住用户和忘记密码的功能,所以针对这二个功能未设计测试点。
  2.设计安全性测试用例
  4.测试界面
  在测试过程中,我们不仅要关注功能点是否按照需求已经实现了,同时我们还需要关注界面和用户体现性,需要进行界面和体现方面的测试。
  在测试界面中,主要测试以下内容:
  1.界面内容
  登录模块放置在页面中的哪个位置,如果居中,是否又居中显示了;
  其它位置放置什么东西;
  用户输入框、密码输入框、登录按钮排列、是否对齐;框的大小;
  用户名、密码字样是否相同,对齐.
  2.提示
  用户名、密码输入框是否有默认提示内容;
  输入错误的用户名或密码是否给出了正确的提示,提示的文字、大小、颜色是否按需求描述(如果需求中没有明确指出,那可以借鉴其它网站相同功能的提示风格);
  用户名和密码是否是必填的,如果是必填的,是否用红色星号表示(通用规则);
  输入为空时,给出的提示是否正确。
  密码显示:密码是否是密文显示,如果需求中规定了可支持明文显示,显示有相应的控件。
  5.总结
  登录模块测试看起来非常简单,但在实际测试过程中也需要考虑非常多的测试点,进行全面覆盖登录功能的需求,登录模块基本所有网站都有这个功能,故你在测试完一个网站之后对其他网站的登录功能测试也算是熟识,可能会根据网站的不同,有一点点变化,只要需求明确了就好。
  如何测试一个网站的登录模块也是面试题之一?
  王豆豆在面试的时候就遇到过,让王豆豆设计登录功能的测试用例,当时王豆豆只考虑了功能方面的测试,而未想起针对功能测试的安全性测试,面试官当时重复问了王豆豆好几遍:还有么?还有其它测试点么?但王豆豆就是没有想出来,还很肯定地回答:没有了,最终是在他的提示下才想起来。
  在面试时,经常会让应聘都设计测试用例,如果是遇到不同的功能也可以根据这个思路来设计测试用例。



上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。

Python+Selenium大型电商项目(京东商城)实战直播,优惠名额抢占中>>

评 论

论坛新帖

顶部 底部


建议使用IE 6.0以上浏览器,800×600以上分辨率,法律顾问:上海瀛东律师事务所 张楠律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2018, 沪ICP备05003035号
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪公网安备 31010102002173号

51Testing官方微信

51Testing官方微博

扫一扫 测试知识全知道