docs: 添加 SDK API 重设计、安全设计规范和测试进度跟踪文档
- 新增 SDK API 重设计规范文档,统一各端 SDK 初始化、登录、消息接口 - 新增安全设计规范文档,涵盖密码安全、AppSecret 验证、令牌存储等安全要点 - 新增 Bug 跟踪记录文档,记录已修复问题和开放问题 - 新增测试进度跟踪文档,记录各模块测试覆盖情况和验证结果
这个提交包含在:
父节点
255974ae09
当前提交
824edd48bc
@ -104,13 +104,13 @@
|
||||
|
||||
---
|
||||
|
||||
### TC-08 UserSig 过期检测测试(新增)
|
||||
### TC-08 UserSig 匹配登录测试(新增)
|
||||
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| **测试目的** | 验证 `XuqmSDK` 解析 UserSig JWT exp 并在过期前触发回调 |
|
||||
| **测试步骤** | 1. 生成一个 exp 为当前时间 + 6 分钟的 UserSig JWT <br> 2. 调用 `XuqmSDK.shared.login(userId:userSig:)` <br> 3. 设置 `XuqmSDK.shared.onUserSigExpired = { ... }` <br> 4. 等待 1 分钟,观察 Timer 是否在正确时间点触发 <br> 5. 触发后调用 `logout()`,确认 Timer 被 `invalidate` |
|
||||
| **预期结果** | 1. `extractExpirationDate` 正确解析 JWT payload <br> 2. `startUserSigExpirationTimer` 创建 `Timer` <br> 3. 到期前 5 分钟触发 `onUserSigExpired?()` <br> 4. 回调在主线程执行 <br> 5. `logout()` 后 `userSigTimer` 为 nil,无内存泄漏 |
|
||||
| **测试目的** | 验证 `XuqmSDK` 仅按 `userId + userSig` 建立 IM 登录态,不解析生命周期字段 |
|
||||
| **测试步骤** | 1. 使用业务服务端签发的 UserSig 调用 `XuqmSDK.shared.login(userId:userSig:)` <br> 2. 观察 `ImSDK.shared.login` 建立 WebSocket 连接 <br> 3. 保持连接并确认 SDK 侧不启动生命周期 Timer <br> 4. 再次传入同一 `userId` 与匹配的新 UserSig 调用 `login` |
|
||||
| **预期结果** | 1. SDK 只保存当前 `userId` 与 `userSig` <br> 2. 不解析 JWT `exp`,不触发生命周期回调 <br> 3. 重新登录会覆盖当前会话并重连 IM |
|
||||
| **实际结果** | 待测试 |
|
||||
| **通过状态** | ⬜ |
|
||||
|
||||
@ -127,4 +127,4 @@
|
||||
| TC-05 | 连接状态监听测试 | ⬜ 待测试 |
|
||||
| TC-06 | Push 设备注册测试(APNs + FCM) | ⬜ 待测试 |
|
||||
| TC-07 | 版本更新检查测试 | ⬜ 待测试 |
|
||||
| TC-08 | UserSig 过期检测测试 | ⬜ 待测试 |
|
||||
| TC-08 | UserSig 匹配登录测试 | ⬜ 待测试 |
|
||||
|
||||
正在加载...
在新工单中引用
屏蔽一个用户