登录用例设计,你真的会了吗

发表于:2023-3-29 09:31

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:测试架构师养成记    来源:知乎

  近期身边有一些朋友陆续开始入行测试行业,在面试过程中随机场景用例设计基本是一个必问的问题,那这个是否也存在通用的回答模式呢?就让我们以最简单的移动端登录场景一起探寻一下吧。
  测试用例设计的通用格式
  其实软件测试用例设计也有一个大概的通用格式,任何场景拿到手后,都可以先按照功能、性能、安全、兼容性、发布等几个大维度大致拆分一下,然后再在每个维度中具体细分一一填充,最终整个用例设计就完成了。
  按照这种分而治之的思路,用例设计是否比较简单呢?当然,在实际陈述过程中,建议按照同样的思路,这样可以给面试官一种条理清楚的感觉。
  登录之功能设计
  让我们从登录场景的功能维度入手吧。
  常用功能
  1、账户状态:未注册、未激活、已注册、已停用。
  由于移动端场景支持手机号登录方式,对用户状态可能区分不太明显,比如手机号登录方式下,手机用户未注册,可以通过短信验证码默认注册、激活并登录成功,全程用户无感知,当然已停用状态下的除外。
  下面场景是以通过用户名和密码登录方式展开,案例如下。
  a) 输入未注册的用户名,验证是否登录失败,且提示信息正确(用户名或者密码错误)
  b) 使用未激活账户登录,验证是否登录失败,且提示信息正确(用户名或者密码错误)
  c) 输入已注册的用户名和正确的密码,验证是否成功登录
  d) 输入已注册的用户名和不正确的密码,验证是否成功失败,且提示信息正确(用户名或者密码错误)
  e) 使用被停用用户登录,验证是否登录失败(用户名或者密码错误)
  留个问题:这边为什么统一提示用户名或者密码错误呢?
  是从安全的角度出发,给黑产从业者增加破坏活动的难度,所以不直接返回给用户明确的提示信息。
  2、用户权限:管理员、普通用户、白名单用户、黑名单用户。
  案例:不同级别的用户,登录过程中系统行为是否与预期一致(如部分白名单用户可能会跳过短信验证码验证),登录后系统后权限是否正确(如管理员和普通用户权限可能有差异)。
  3、前端页面及校验功能
  a) 页面默认焦点是否定位在用户输入框中
  b) 快捷键Enter是否可以正常使用
  c) 输入是否支持特殊字符和中文
  d) 不输入和输入空格字符串的校验是否一致
  e) 数字和字母键盘是否可以切换
  f) 是默认键盘还是安全键盘
  g) 用户名和密码长度是否有限制
  h) 密码是否支持掩码
  4、验证方式:短信验证码、语音验证码、图形验证码、滑块验证码、极验验证码、密码验证、第三方验证(微信等)、指纹验证、人脸验证等,由于各种验证方式大体一致,这边就只以短信验证码为例,其他验证方式就不一一赘述了。
  a) 短信验证码为空,验证登录是否成功,且提示信息正确
  b) 短信验证码输错,验证登录是否成功,且提示信息正确
  c) 短信验证码正确,验证登录是否成功
  d) 短信验证码输入错误满一定次数,是否会验证方式升级,比如语音验证码、图形验证码,滑块或者检验验证码等。
  e) 短信验证码输入错误满一定次数,是否会当天禁止用户登录
  f) 短信验证码输入错误满一定次数,是否会转人工处理
  g) 验证方式升级后,是否验证情形同上
  h) 后台系统创建的用户第一次登录成功时,是否提示修改密码
  i) 忘记用户名和忘记密码的功能是否可用
  j) 如果为密码验证方式,密码是否加密
  k) 登录成功后,个人信息页面,用户名、手机号等敏感信息是否掩码处理
  l) 重新获取验证码是否需要60s
  m) 重新获取的验证码是否有变化
  n) 重新获取的验证码输入正确,是否登录成功
  o) 其他验证码是否支持反复刷新
  p) 其他验证码输入错误,是否登录失败,并正确提示信息
  q) 其他验证码输入正确,是否登录成功
  r) 指纹或者人脸权限未开通,是否提示权限申请
  s) 指纹或者人脸权限开通,输入错误,是否登录失败,并提示正确信息
  t) 指纹或者人脸权限开通,输入正确,是否登录成功
  u) 验证码是否有时效性
  v) 登录成功,但是会话超时后,继续操作是否会重定向到登录界面
  w) 登录成功,token是否区分长短token,是否时间与预期设置一致
  x) 是否登录错误信息提示友好
  5、本地缓存:有、无
  a) 登录成功后,是否有本地缓存,如果有,是否可以清空,清空后,登录态是否丢失
  b) 如果有本地缓存,登录成功后,来回切换不同用户登录后,看用户信息是否正确
  c) 如果有本地缓存,覆盖安装后,用户信息是否正确
  d) 如果有本地缓存,全新安装后,用户登录态是否丢失
  e) 如果有本地缓存,登录成功后,退出应用,重新启动是否仍为登录状态
  f) 如果有本地缓存,登录成功后,有效期是否延长
  g) 如果有本地缓存,登录成功后,登出用户,重新启动是否为未登录状态
  h) 如果无本地缓存,登录成功后,退出应用,重新启动,是否为未登录状态
  6、数据库记录
  a)注册后,用户信息是否正确落库
  b)登录成功后,用户状态是否正确
  c)登出成功后,用户状态是否正确
  7、多次点击
  a)多次点击,是否有幂等控制
  8、链路功能
  a) 登录成功后是否跳转页面正确
  b)登出成功后是否跳转页面正确
  c)登录失败后是否跳转页面正确
  d)登出失败后是否跳转页面正确
  e)需要登录才能访问页面,访问是否弹出登录页面
  f) 需要登录才能访问页面,访问登录弹出登录页面成功后,是否跳转页面正确
  g) 不同登录入口登录成功后,是否跳转页面正确
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号