返回开发者与 QA
Magic link 是 authentication handoff
如何测试 Magic Link 登录,并捕获 session 层面的错误
检查收件人、环境、链接、redirect,以及最后建立的认证session身份;只有一个可点击链接并不能证明登录正确。
约 8 分钟
Magic link邮件看起来完全正确时,系统仍可能给错误用户建立session、从staging跳到production,或者允许link被重复使用。测试必须从邮件一直追到最终session,因为session才是passwordless login真正的结果。
沿着信任边界测试
- 1
为已知地址创建一次attempt
除非测试link supersession,否则不要堆积多个pending请求。
- 2
匹配当前消息
核对recipient、sender、time。
- 3
打开前检查host
staging与production必须隔离。
- 4
跟随redirect chain
观察session creation。
- 5
断言identity与最终route
HTTP 200远远不够。
只测邮件会漏掉的问题
| 问题 | 邮件看起来 | E2E发现 |
|---|---|---|
| 环境错 | 正常 | host错误 |
| identity错 | 投递正确 | session属于其他用户 |
| callback错 | 可点击 | 最终route失败 |
| replay | link仍存在 | 第二次仍能登录 |
有效 URL 应按credential处理
Auth0把magic link描述为点击后直接登录,因此完整URL不应无必要地留在长期logs或screenshots中。
诊断通常只需要host、脱敏route、时间和最终session。
应独立拥有的case
- fresh link
- expiration
- second use
- two requested links
- environment separation
- allowed redirect
- same identity session
Magic link测试的终点是正确session,不是邮箱截图。message、URL、redirect、identity和environment必须始终一致。
需要一个干净的收件地址做手工邮件 QA?
使用 MailOnce 检查真实的注册、OTP、魔法链接、密码重置和通知邮件,无需把个人邮箱放进测试数据。
创建临时邮箱来源与延伸阅读
用于支撑测试建议的安全资料和测试运行器一手文档。
继续测试
继续查看同一邮件测试问题空间中的下一个边界。