面试题:如何测试登陆功能

最近在作一个创新项目,这个项目有二个平台,每一个平台都有先后端,故有四个系统,每一个系统都有登陆功能,并且不一样系统代码设计方式都有所差别,因此就这个登陆功能而言就要测试四次,看似一个简单的登陆功能其中设计的测试点也是至关复杂,今天王豆豆就讲讲如何测试登陆功能。面试

 

1.了解平台后端

 

首先你须要了解平台设计结构,是先后端分离仍是不分离。浏览器

 

了解这个主要是涉及到用户登陆缓存数据的一个存储。缓存

这就须要了解session,cookie,Token之间的区别。安全

 

目前咱们的二个平台,有一个平台是作的先后端分离,由于先后端分离是无状态的,就没有session,必须有权限认证,有多是Token,也有多是其它(Oauth/Bearer Token等),这里咱们的系统用的是Token(令牌)认证。服务器

 

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

 

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

Session数据存放在服务器中。前后端分离

Token用户身份的验证方式。测试

 

 

2.分析登陆模块的测试点

 

通常来讲登陆模块的功能点都比较简单。大体分为用户名、密码、忘记密码、记住用户名以及按钮。

 

除了分析功能点以外,咱们还须要考虑如下几个点:

 

1.权限认证

 

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

 

2.横向越权

 

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

 

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

 

3.设计测试用例

 

1.设计功能点的测试用例

 

咱们的系统不作记住用户和忘记密码的功能,因此针对这二个功能未设计测试点。

 

2.设计安全性测试用例

 

4.测试界面

 

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

 

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

 

1.界面内容

 

登陆模块放置在页面中的哪一个位置,若是居中,是否又居中显示了;

其它位置放置什么东西;

用户输入框、密码输入框、登陆按钮排列、是否对齐;框的大小;

用户名、密码字样是否相同,对齐.

  

2.提示

 

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

 

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

 

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

 

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

 

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

 

5.总结

 

登陆模块测试看起来很是简单,但在实际测试过程当中也须要考虑很是多的测试点,进行全面覆盖登陆功能的需求,登陆模块基本全部网站都有这个功能,故你在测试完一个网站以后对其余网站的登陆功能测试也算是熟识,可能会根据网站的不一样,有一点点变化,只要需求明确了就好。

 

 

如何测试一个网站的登陆模块也是面试题之一?

 

王豆豆在面试的时候就遇到过,让王豆豆设计登陆功能的测试用例,当时王豆豆只考虑了功能方面的测试,而未想起针对功能测试的安全性测试,面试官当时重复问了王豆豆好几遍:还有么?还有其它测试点么?但王豆豆就是没有想出来,还很确定地回答:没有了,最终是在他的提示下才想起来。

 

在面试时,常常会让应聘都设计测试用例,若是是遇到不一样的功能也能够根据这个思路来设计测试用例。

 

王豆豆但愿每一篇文章都能带新思路,欢迎关注王豆豆的公众号(zishentester),和王豆豆一块儿成长。

相关文章
相关标签/搜索