guest.md 2.4 KB

测试用例 · 游客(Guest)

关联场景:../user-scenarios/01-guest.md。对应 e2e:../e2e/roles/*(登录类)。

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-G-01 G-1 启动/首页 游客 P1 功能 清除登录态 1. 冷启动进入 splash/home 2. 观察首页与入口 显示引流首页,不进入任何业务页;明显展示微信/手机号/邀请登录入口 JwtInterceptor 拦截 /api/** e2e/roles/child/login.spec.js(反向)
TC-G-02 G-2 认证 游客 P0 接口 微信授权可用(test-mode) 1. 点微信一键登录 2. POST /api/auth/wechat-login 返回 Result 含 token+用户信息;角色默认 parent;跳转家长首页;首次登录建 User+family_members(memberType=login) AuthController/API_REFERENCE 1.1 e2e/roles/parent/../login
TC-G-03 G-3 认证 游客 P0 接口 有效手机号 13800000001 1. POST /api/auth/send-code 2. POST /api/auth/phone-login(验证码) 3. 重复错误验证码 验证码正确→登录下发 token;错误→提示失败且不产生会话;限流生效 统一 POST/JWT —
TC-G-04 G-4 家庭/邀请 游客 P1 功能 家长已 POST /api/family/invite/generate 生成邀请 1. 扫码/落地页进入 2. POST /api/auth/register-with-invite(带令牌) 登录后自动归属对应家庭,成员列表出现该用户;令牌失效→「邀请已失效」 FamilyInviteController e2e/roles/teacher/family-binding.spec.js(参考)
TC-G-05 G-5 权限 游客 P0 权限 无 token;已知业务路由 1. 直接请求 /pages/family/index 等(无 Authorization) 2. POST /api/product/list、/api/articles/list 3. 点商品/文章详情需登录项 业务页→401 跳登录,登录后回跳;商城/文章列表可见(公开);需登录详情被拦截 JWT;8 公开路径白名单(1.1) e2e/debug-control.spec.js(参考)

异常/边界补充

  • TC-G-02a(异常):同一微信二次登录应返回已有账号,不重复建号(验重)。
  • TC-G-03a(异常):验证码过期/频繁发送触发限流,提示明确。
  • TC-G-05a(权限):token 过期后任意 /api/** 接口统一 401,前端统一跳登录。