302 lines
9.1 KiB
Markdown
302 lines
9.1 KiB
Markdown
# Phase 4 兼容性测试矩阵
|
||
|
||
**阶段**: Week 11-12 - 真机兼容性测试
|
||
**测试负责人**: 测试工程师
|
||
**更新日期**: 2026-03-07
|
||
**状态**: 🟡 进行中
|
||
|
||
---
|
||
|
||
## 📱 测试设备矩阵
|
||
|
||
### iOS 设备
|
||
|
||
| 设备型号 | 屏幕尺寸 | 系统版本 | 测试状态 | 问题数 | 备注 |
|
||
|---------|---------|---------|---------|-------|------|
|
||
| iPhone 8 | 4.7" | iOS 14.0+ | ⏳ 待测 | - | 小屏代表 |
|
||
| iPhone X/XS | 5.8" | iOS 14.0+ | ⏳ 待测 | - | 刘海屏适配 |
|
||
| iPhone 11 | 6.1" | iOS 14.0+ | ⏳ 待测 | - | LCD 刘海屏 |
|
||
| iPhone 12/12 Pro | 6.1" | iOS 14.0+ | ⏳ 待测 | - | 5G 机型 |
|
||
| iPhone 13 Pro | 6.1" | iOS 15.0+ | ⏳ 待测 | - | ProMotion 120Hz |
|
||
| iPhone 14 Pro Max | 6.7" | iOS 16.0+ | ⏳ 待测 | - | 灵动岛适配 |
|
||
| iPhone 15 Pro Max | 6.7" | iOS 17.0+ | ⏳ 待测 | - | USB-C 接口 |
|
||
|
||
### Android 设备
|
||
|
||
| 品牌 | 设备型号 | 屏幕尺寸 | 系统版本 | 测试状态 | 问题数 | 备注 |
|
||
|------|---------|---------|---------|---------|-------|------|
|
||
| 华为 | Mate 40 Pro | 6.76" | Android 10+ | ⏳ 待测 | - | 鸿蒙系统 |
|
||
| 华为 | P50 Pro | 6.6" | Android 10+ | ⏳ 待测 | - | 无 GMS |
|
||
| 小米 | 小米 13 | 6.36" | Android 13+ | ⏳ 待测 | - | MIUI 14 |
|
||
| 小米 | Redmi Note 12 | 6.67" | Android 12+ | ⏳ 待测 | - | 中端机代表 |
|
||
| OPPO | Find X6 | 6.74" | Android 13+ | ⏳ 待测 | - | ColorOS |
|
||
| VIVO | X90 Pro | 6.78" | Android 13+ | ⏳ 待测 | - | OriginOS |
|
||
| 三星 | Galaxy S23 | 6.1" | Android 13+ | ⏳ 待测 | - | One UI |
|
||
| 三星 | Galaxy A54 | 6.4" | Android 13+ | ⏳ 待测 | - | 中端机 |
|
||
|
||
---
|
||
|
||
## 🧪 测试项目清单
|
||
|
||
### 1. 基础功能测试
|
||
|
||
| 测试项 | 描述 | 优先级 | iOS | Android |
|
||
|-------|------|-------|-----|---------|
|
||
| 应用启动 | 冷启动/热启动时间 | P0 | ⏳ | ⏳ |
|
||
| 登录注册 | 账号注册、登录、退出 | P0 | ⏳ | ⏳ |
|
||
| 项目列表 | 创建、删除、重命名项目 | P0 | ⏳ | ⏳ |
|
||
| 原理图编辑 | 打开编辑器、基本操作 | P0 | ⏳ | ⏳ |
|
||
| 保存功能 | 本地保存、云同步 | P0 | ⏳ | ⏳ |
|
||
| 文件导入 | 导入 JSON/Tile 格式 | P1 | ⏳ | ⏳ |
|
||
| 文件导出 | 导出为各种格式 | P1 | ⏳ | ⏳ |
|
||
|
||
### 2. UI 适配测试
|
||
|
||
| 测试项 | 描述 | 优先级 | iOS | Android |
|
||
|-------|------|-------|-----|---------|
|
||
| 刘海屏适配 | 状态栏安全区域 | P0 | ⏳ | ⏳ |
|
||
| 灵动岛适配 | iPhone 14/15 Pro 系列 | P1 | ⏳ | - |
|
||
| 折叠屏适配 | 展开/折叠状态切换 | P2 | - | ⏳ |
|
||
| 横竖屏切换 | 屏幕旋转响应 | P1 | ⏳ | ⏳ |
|
||
| 深色模式 | 主题切换一致性 | P1 | ⏳ | ⏳ |
|
||
| 多语言 | 4 种语言显示正确 | P1 | ⏳ | ⏳ |
|
||
| RTL 布局 | 阿拉伯语从右到左 | P2 | ⏳ | ⏳ |
|
||
| 字体缩放 | 系统字体大小调整 | P2 | ⏳ | ⏳ |
|
||
|
||
### 3. 手势交互测试
|
||
|
||
| 测试项 | 描述 | 优先级 | iOS | Android |
|
||
|-------|------|-------|-----|---------|
|
||
| 单指拖拽 | 画布平移 | P0 | ⏳ | ⏳ |
|
||
| 双指缩放 | 画布缩放(0.1x-10x) | P0 | ⏳ | ⏳ |
|
||
| 双指旋转 | 画布旋转 | P1 | ⏳ | ⏳ |
|
||
| 长按菜单 | 上下文菜单弹出 | P0 | ⏳ | ⏳ |
|
||
| 双击操作 | 双击适应屏幕 | P2 | ⏳ | ⏳ |
|
||
| 三指撤销 | 三指滑动撤销 | P2 | ⏳ | ⏳ |
|
||
| 触控笔支持 | Apple Pencil/手写笔 | P2 | ⏳ | ⏳ |
|
||
|
||
### 4. 性能测试
|
||
|
||
| 测试项 | 描述 | 目标 | iOS | Android |
|
||
|-------|------|------|-----|---------|
|
||
| 100 元件渲染 | 简单电路 | 60fps | ⏳ | ⏳ |
|
||
| 500 元件渲染 | 中等电路 | 60fps | ⏳ | ⏳ |
|
||
| 1000 元件渲染 | 复杂电路 | ≥50fps | ⏳ | ⏳ |
|
||
| 5000 元件渲染 | 超大型电路 | ≥30fps | ⏳ | ⏳ |
|
||
| 缩放流畅度 | 快速缩放无卡顿 | 60fps | ⏳ | ⏳ |
|
||
| 内存占用 | 1000 元件场景 | <500MB | ⏳ | ⏳ |
|
||
| 启动时间 | 冷启动到首页 | <3s | ⏳ | ⏳ |
|
||
| 保存耗时 | 1000 元件保存 | <2s | ⏳ | ⏳ |
|
||
|
||
### 5. 边界条件测试
|
||
|
||
| 测试项 | 描述 | 优先级 | iOS | Android |
|
||
|-------|------|-------|-----|---------|
|
||
| 弱网环境 | 3G/2G 网络同步 | P1 | ⏳ | ⏳ |
|
||
| 断网操作 | 离线编辑后同步 | P0 | ⏳ | ⏳ |
|
||
| 低电量模式 | 系统省电模式 | P2 | ⏳ | ⏳ |
|
||
| 存储空间不足 | 保存时空间不足 | P1 | ⏳ | ⏳ |
|
||
| 后台切换 | 应用前后台切换 | P0 | ⏳ | ⏳ |
|
||
| 来电中断 | 编辑时来电干扰 | P1 | ⏳ | ⏳ |
|
||
| 系统版本边界 | 最低支持版本 | P0 | ⏳ | ⏳ |
|
||
|
||
### 6. 崩溃率测试
|
||
|
||
| 测试项 | 描述 | 目标 | 集成状态 |
|
||
|-------|------|------|---------|
|
||
| Crashlytics | Firebase Crashlytics | <0.1% | ⏳ 待集成 |
|
||
| 崩溃捕获 | 未捕获异常记录 | 100% | ⏳ 待集成 |
|
||
| ANR 监控 | Android 无响应 | <0.1% | ⏳ 待集成 |
|
||
| 崩溃分析 | 崩溃堆栈分析 | - | ⏳ 待集成 |
|
||
|
||
---
|
||
|
||
## 📊 测试进度追踪
|
||
|
||
### 总体进度
|
||
|
||
```
|
||
总测试项:78
|
||
已完成:0 (0%)
|
||
进行中:0 (0%)
|
||
待测试:78 (100%)
|
||
```
|
||
|
||
### 按设备进度
|
||
|
||
| 设备类型 | 设备数 | 已完成 | 进度 |
|
||
|---------|-------|-------|------|
|
||
| iOS | 7 | 0 | 0% |
|
||
| Android | 8 | 0 | 0% |
|
||
| **总计** | **15** | **0** | **0%** |
|
||
|
||
### 按优先级进度
|
||
|
||
| 优先级 | 测试项数 | 已完成 | 进度 |
|
||
|-------|---------|-------|------|
|
||
| P0 (关键) | 20 | 0 | 0% |
|
||
| P1 (重要) | 35 | 0 | 0% |
|
||
| P2 (次要) | 23 | 0 | 0% |
|
||
|
||
---
|
||
|
||
## 🐛 问题追踪
|
||
|
||
### 问题严重程度定义
|
||
|
||
| 级别 | 定义 | 响应时间 |
|
||
|------|------|---------|
|
||
| P0 - 致命 | 应用崩溃、数据丢失、核心功能不可用 | 立即修复 |
|
||
| P1 - 严重 | 主要功能受损、严重影响体验 | 24 小时内 |
|
||
| P2 - 一般 | 次要功能问题、UI 瑕疵 | 本周内 |
|
||
| P3 - 轻微 | 建议性改进、文案问题 | 后续版本 |
|
||
|
||
### 已发现问题
|
||
|
||
| ID | 问题描述 | 设备/系统 | 严重程度 | 状态 | 负责人 |
|
||
|----|---------|----------|---------|------|-------|
|
||
| - | _暂无问题_ | - | - | - | - |
|
||
|
||
### 问题模板
|
||
|
||
```markdown
|
||
### [ID] 问题简述
|
||
|
||
**发现日期**: YYYY-MM-DD
|
||
**设备型号**: iPhone 15 Pro Max / 小米 13 等
|
||
**系统版本**: iOS 17.0 / Android 13
|
||
**复现步骤**:
|
||
1. 步骤一
|
||
2. 步骤二
|
||
3. 步骤三
|
||
|
||
**预期结果**: 应该...
|
||
**实际结果**: 实际...
|
||
**截图/录屏**: [附件]
|
||
**崩溃日志**: [如有]
|
||
**严重程度**: P0/P1/P2/P3
|
||
**状态**: 待确认/已确认/修复中/已修复/已验证
|
||
```
|
||
|
||
---
|
||
|
||
## 🔧 测试工具
|
||
|
||
### iOS 测试工具
|
||
|
||
- **Xcode Instruments**: 性能分析、内存泄漏检测
|
||
- **Simulator**: 多设备模拟器
|
||
- **TestFlight**: 内部分发测试
|
||
- **Firebase Crashlytics**: 崩溃监控
|
||
|
||
### Android 测试工具
|
||
|
||
- **Android Studio Profiler**: 性能分析
|
||
- **Android Emulator**: 多设备模拟器
|
||
- **Firebase App Distribution**: 内部分发
|
||
- **Firebase Crashlytics**: 崩溃监控
|
||
|
||
### 自动化测试
|
||
|
||
- **Flutter Integration Test**: E2E 测试
|
||
- **Flutter Driver**: UI 自动化
|
||
- **Appium**: 跨平台自动化(可选)
|
||
|
||
---
|
||
|
||
## 📋 测试执行流程
|
||
|
||
### 1. 准备阶段
|
||
|
||
```bash
|
||
# 1. 构建测试包
|
||
flutter build apk --release # Android
|
||
flutter build ios --release # iOS
|
||
|
||
# 2. 分发到测试设备
|
||
# - iOS: TestFlight / 直接安装
|
||
# - Android: Firebase App Distribution / 直接安装
|
||
|
||
# 3. 准备测试账号
|
||
# - 创建测试账号若干
|
||
# - 准备测试项目数据
|
||
```
|
||
|
||
### 2. 执行测试
|
||
|
||
1. 按照测试矩阵逐项测试
|
||
2. 记录测试结果(通过/失败)
|
||
3. 发现问题立即记录到问题追踪表
|
||
4. 每日汇总测试进度
|
||
|
||
### 3. 问题修复验证
|
||
|
||
1. 开发修复问题
|
||
2. 发布新版本测试包
|
||
3. 测试工程师验证修复
|
||
4. 更新问题状态
|
||
|
||
### 4. 测试报告
|
||
|
||
测试完成后输出:
|
||
- 兼容性测试报告
|
||
- 性能基准报告
|
||
- 崩溃分析报告
|
||
- Release Candidate 评估
|
||
|
||
---
|
||
|
||
## 📅 测试计划
|
||
|
||
### Week 11 (2026-03-07 ~ 2026-03-13)
|
||
|
||
| 日期 | 测试内容 | 负责人 |
|
||
|------|---------|-------|
|
||
| 周一 | iOS 基础功能测试 (iPhone 8-12) | 测试工程师 |
|
||
| 周二 | iOS 进阶测试 (iPhone 13-15) | 测试工程师 |
|
||
| 周三 | Android 基础功能测试 (华为/小米) | 测试工程师 |
|
||
| 周四 | Android 进阶测试 (OPPO/VIVO/三星) | 测试工程师 |
|
||
| 周五 | 性能测试 + 边界条件测试 | 测试工程师 |
|
||
| 周末 | 问题修复 + 回归测试 | 开发团队 |
|
||
|
||
### Week 12 (2026-03-14 ~ 2026-03-20)
|
||
|
||
| 日期 | 测试内容 | 负责人 |
|
||
|------|---------|-------|
|
||
| 周一 | 崩溃率测试 + Crashlytics 集成 | 测试工程师 |
|
||
| 周二 | E2E 流程测试 | 测试工程师 |
|
||
| 周三 | UX 打磨 + 文案优化 | 测试工程师 |
|
||
| 周四 | 最终回归测试 | 测试工程师 |
|
||
| 周五 | Release Candidate 评估 | 全体 |
|
||
|
||
---
|
||
|
||
## ✅ 准出标准
|
||
|
||
### 兼容性测试准出
|
||
|
||
- [ ] 所有 P0 测试项 100% 通过
|
||
- [ ] 所有 P1 测试项 ≥95% 通过
|
||
- [ ] 所有 P2 测试项 ≥90% 通过
|
||
- [ ] 无 P0 级别未修复问题
|
||
- [ ] P1 级别未修复问题 ≤3 个
|
||
|
||
### 性能测试准出
|
||
|
||
- [ ] 1000 元件渲染 ≥50fps (所有设备)
|
||
- [ ] 启动时间 <3s (所有设备)
|
||
- [ ] 内存占用 <500MB (1000 元件场景)
|
||
- [ ] 保存耗时 <2s (1000 元件)
|
||
|
||
### 崩溃率准出
|
||
|
||
- [ ] Crashlytics 集成完成
|
||
- [ ] 崩溃率 <0.1%
|
||
- [ ] ANR 率 <0.1% (Android)
|
||
- [ ] 无 P0 级别崩溃问题
|
||
|
||
---
|
||
|
||
**文档维护**: 测试工程师
|
||
**最后更新**: 2026-03-07
|