简述扫码登录原理及测试要点

扫码登录本质是解决将APP端的用户登录信息(通常是Token)通过扫码的形式安全稳定地同步给Web端。

操作流程:

  • 打开登录页面,展示一个二维码(web);
  • 打开APP扫描该二维码后,APP显示确认、取消按钮(app);
  • 这时候登录页面展示被扫描的用户头像等信息(web);
  • 用户在APP上点击确认登录(app);
  • 页面登录成功,并进入主应用程序页面(web);

测试点包括哪些:

1、页面基础功能;

  • 正常场景:扫码成功,是否有提示和跳转
  • 逆向场景:扫码失败,网络异常等;
  • 扫码入口,使用当前匹配app进行扫码,尝试其他app扫码,如淘宝;
  • 其他方式:截图保存二维码扫码;
  • 其他常规:扫码不完整,扫码光线、多次扫码、不同设备扫码,退出登录后,重新扫码;
  • 非登录状态,扫码是否有提示先登录;
  • 手机权限管理,关闭了摄像头扫码,是否有提示获取摄像头权限;(是否会出现调不起闪退)
  • 兼容性:主流系统进行扫码,是否可兼容;
  • 是否有扫码错误次数限制。

2、ticket的过期时间;

  • 二维码时效性,超时扫码,重新刷新二维码后是否正常;

3、ticket的唯一性,以及生成和加密方式;

  • 用户信息校验:使用账号与当前账户不匹配的情况,是否给出提示;

为什么使用二维码扫描更安全?

手机端已经进行过了登录,在访问手机端的服务器的时候,参数中都会携带一个用户的token, 服务器可以从中解析到用户信息这里从token中取值而不是手机端直接传userid是为了安全,直接传userid可能会被截获和修改, token是加密的,被修改的风险会小很多。

长连接和轮询的区别?

当浏览器端与服务器建立连接之后,一般有两种方式可以获取到服务器的更新信息,即 polling 和 long polling。

  • polling 即轮询,是指浏览器通过周期性轮询,查看服务器是否有更新的信息;
  • long polling 指的是长轮询,浏览器与服务器建立连接之后,服务器将此连接进行挂起,但有更新信息时,再将信息发送给浏览器端。

浏览器端重新建立连接,如此循环反复,这是一种长连接的方式。

实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。

如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步

在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。

我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,

自动化测试视频教程、学习笔记领取传送门!!!

相关推荐
HBYKKJ1 天前
格雷希尔:G15F-KFYK-FD39 定制款快速密封连接器,适配自动化产线,赋能电驱动通讯接口的自动化密封测试
自动化·集成测试·气密性测试·新能源汽车·格雷希尔·快速密封连接器·电驱动测试
阿蔹1 天前
泰和昌商城接口自动化项目框架介绍
运维·自动化
测试秃头怪1 天前
支付宝性能测试案例分析详解
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·性能测试
Tfly__1 天前
Ubuntu20.04安装Genesis(最新)
linux·人工智能·pytorch·ubuntu·github·无人机·强化学习
程序员的程1 天前
我做了一个前端股票行情 SDK:stock-sdk(浏览器和 Node 都能跑)
前端·npm·github
b***25111 天前
圆柱锂电池双面点焊机:新能源制造的核心工艺装备
人工智能·自动化
fandroid1 天前
在GitHub上fork项目后,fork仓库与远程源仓库同步,网页端无法同步时,用命令行强制同步
github
Blossom.1181 天前
强化学习推荐系统实战:从DQN到PPO的演进与落地
人工智能·python·深度学习·算法·机器学习·chatgpt·自动化
天才测试猿1 天前
软件测试之bug分析定位技巧
软件测试·python·selenium·测试工具·职场和发展·测试用例·bug
cute_ming1 天前
浅谈提示词工程:企业级系统化实践与自动化架构(三)
人工智能·ubuntu·机器学习·架构·自动化