本文为系列文章"Web 软件测试 Checklist 应用系列"中的第 5 篇,主要介绍 Checklist 在测试网页产品的用户可用性和访问控制方面应用 Checklist 的情况,并给出部分应用实例。良好的用户可用性可以保证用户在使用过程中方便、快捷的获取需要的信息,并执行相关操作;而访问控制则是在满足用户的功能要求的前提下,保证对产品和数据的访问受到访问控制的保护,从而保护数据的安全。在有些情况下,用户可用性和访问控制需要进行一定的权衡,因为过于严格的访问权限控制可能会带来用户可用性的下降,两者的权衡需要全面考虑用户的各方面需求。
用户可用性和访问控制是用户访问数据过程的两面。从可用性的角度看,用户希望拥有一个尽量开放的环境,能轻松准确的获取到自己期望的信息;从访问控制的角度看,需要确保用户对数据的访问得到严格的控制,只有授权用户才可以访问相应数据。这两个方面,正是我们在网页产品测试中需要注意的两个方面,同时,我们需要考虑两者之间的权衡,倒向任何一个极端都不是用户期望看到的理想情况。
序号 | Checklist |
---|---|
1.1 | 检查所有字体大小以确保内容可读 |
1.2 | 检查网页的整体外观和感觉 |
1.3 | 当从网页中的任务中途退出时任务是否取消 |
字体大小要适当,当多种内容显示在同样一个页面中时,需要注意相互之间是否冲突。尤其要注意,文字是否有残缺的部分,比如文字的显示超出了显示范围而滚动条并没有出现。还有,当用户调整浏览器的文字显示大小后,页面内容是否依然可读,有无排列混乱的情况出现。
关于产品的可用性测试,很多情况其实都是用户的一个“感受”。当用户感觉不好时,我们就需要想一下,这里是不是有需要改进的地方。这也是所有的产品设计和开发的重要宗旨,因为所有的产品都要服务于客户。
人们常说,第一印象很重要。当用户第一次打开网页,看到产品的模样时,第一印象就已经深深的影响了客户。这时候看到的第一个感觉是什么,总体看上去怎么样,这对用户的初体验非常重要。一旦第一印象行程,要想改变这一印象,通常需要花费更大的努力。因此,网页产品的开发中,需要保证总体上没有明显的问题和特别别扭的地方。一旦客户感觉不好了,我们首先要认真思考我们的产品需要如何改进。
上图中,展示了一个时间日期相关的定义窗口,从功能上来说,这里并没有明显的问题。但整体上,感觉图中的字体采用完全一样的字体会使用户难以区分划分类别与细分选项,因为两者的字体和颜色都是相同的。从用户可用性的角度考虑,这里需要将类别的名称与具体选项加以区分,可以通过文字加粗、字号加大、斜体、更改颜色、更换字体等方式加以区分,以帮助用户更容易从整体上区分出类别和细化选项。
当用户在执行网页中的一项任务时,如果用户直接退出当前页面,正在执行的任务是否取消呢?从产品设计的角度,如果能够在用户将要离开时给出提示信息,并询问用户是否确定在当前任务尚未完成的情况下退出页面。万一出现用户强制离开当前页面的情况,产品需要保护好数据的一致性,合理的执行回滚等操作。
序号 | Checklist |
---|---|
2.1 | 确保登录用户名密码有确定的命名规范 |
2.2 | 检查密码是否有合理的过期策略 |
2.3 | 检查密码输入错误指定次数后是否锁定用户 |
2.4 | 检查是否存在忘记密码帮助链接 |
2.5 | 检查是否存在密码管理流程 |
2.6 | 检查用户权限是否划分等级 |
2.7 | 检查低权限用户是否能访问高权限用户功能 |
在网页产品的登陆过程中,用户名和密码需要有明确的命名规则,该规则清楚的规定什么是正确有效的用户名和密码。产品需要对用户输入的用户名和密码进行有效性检验,接受合法的输入,同时也要拒绝非法输入。对于非法输入的处理尤其需要注意。如果处理不当,可能引起产品使用的异常,甚至严重时可能导致产品被非法攻破。
从安全性的角度考虑,用户登录密码需要有一个有效期,以提醒用户定期更换密码。在网页产品的测试过程中,需要测试密码的过期策略是否有效。
如上图所示,该产品的用户定义页面没有指定用户的密码过期时间,也就是密码永远有效不会过期,这将给密码的安全性带来挑战。定期的密码过期策略可以从一定程度上提高产品的安全性,以更好的保护产品和数据。
为了防止对产品的连续多次非法登录攻击,通常需要对连续多次错误登录的用户进行锁定,以保证用户安全。对于具备该设置的产品,测试过程中需要对该“指定次数”进行测试,也要尝试使用被锁定后的用户登陆产品,确保产品给出恰当的提示信息。
通常情况下,登陆页面上需提供忘记密码帮助选项,以帮助用户在忘记密码的情况下找回密码。这是现在几乎所有产品的必备选项,也是用户友好性的重要方面。该帮助功能可以通过回答验证问题、邮箱找回密码、邮箱发送密码更改连接等方式实现。
从用户友好的角度出发,产品需要为用户提供管理密码的流程,比如更改密码、重置密码等选项。同时,在更改密码时,需提供之前的密码,以防密码被非法人员更改。
为了为不同的用户提供不同的功能,同时保证用户不能访问其不应访问的数据和功能,产品应允许创建不同的权限等级的用户。这样既可以保证用户具有自己应有的权限,同时又使其不具备自己没有的权限,从而实现了功能性和安全性的权衡。
在网页产品的权限管理中,需要特别注意的一点是,要确保低权限等级的用户不能使用高权限等级用户专有的功能。
在我们的测试过程中,曾遇到这样一个实例,如上图所示:通过产品创建了一个非管理员权限用户,但用此用户登录之后,可以执行所有管理员权限的功能。这明显是该处权限管理工作异常造成的,是产品的缺陷。
本文阐述了在网页产品的开发过程中用户可用性和访问控制方面需要注意的事项。
在用户体验越来越重要的今天,用户对可用性、友好性的要求越来越高。越来越多的新产品为用户提供了更加丰富、快捷的用户体验方式,比如移动智能终端为用户带来的快捷体验。这也要求我们在开发网页产品时,充分重视用户可用性,以为用户提供满意的体验。
与此同时,随着信息爆炸和大数据时代的来临,数据已成为另一项自然资源,有待人们充分利用和开发。这也为我们产品的安全性提出了挑战,因此,做好产品的访问控制显得尤为重要。
本系列下一篇将主要介绍在测试网页产品的消息和帮助方面应用 Checklist 的情况。