### 1. 权限请求回归用例总览:权限类型、请求流程、回归测试目标、用例设计原则
章节定位:本章为全课程纲领性总览,建立权限请求回归测试的统一认知框架。后续所有章节的用例设计、执行策略、自动化方案均以此为基础展开。
#### 适用场景 该总览适用于以下三类项目阶段: - **新特性引入阶段**:在 CameraX 项目中新增相机权限、音频权限或传感器权限时,需回归验证已有权限请求逻辑未受影响。 - **系统适配阶段**:Android 版本升级、厂商定制 ROM 变更、权限管理策略调整(如 Android 14 新增照片选择器权限)后,全量回归权限请求流程。 - **基线维护阶段**:每次迭代发布前,将权限请求回归用例纳入 Smoke Test 或 Sanity Test 基线。 #### 前置条件 在开展权限请求回归用例设计工作前,必须完成以下准备: | 项目 | 具体要求 | |------|----------| | 权限清单 | 已梳理出当前版本 CameraX 涉及的全部权限类型(Dangerous / Normal / Signature),并形成权限映射表 | | 原始代码 | 获取待测版本的完整 APK 及编译日期、Git Commit ID | | 测试数据 | 准备至少 3 台不同 Android 版本(Android 12 / 13 / 14)的物理设备或模拟器 | | 环境对齐 | 测试机已关闭自动权限授予、禁用系统级权限记忆功能 | #### 操作步骤

权限请求回归用例总览的定义过程遵循以下步骤,各步骤的输出物将作为后续章节的输入依据:

1. **权限类型盘点**:遍历 CameraX 所有使用场景(预览、拍照、视频录制、音频采集),列出每个场景依赖的运行时权限。 2. **请求流程拆解**:从用户点击功能入口开始,到权限弹窗出现、用户选择“允许/拒绝/不再询问”,再到后续功能可用性,形成完整的权限请求链路。 3. **回归目标分解**:根据风险等级将测试目标拆分为兼容性目标、流程完整性目标、边界条件目标三类。 4. **设计原则确定**:基于测试效率和风险覆盖,制定用例设计的 4 条核心原则。 5. **用例模板输出**:输出《CameraX 权限请求回归用例清单》第一版框架。 #### 输入输出物
输入物定义:本阶段的输入物主要来自产品需求文档、Android 权限文档以及上版本的测试基线。
| 类型 | 具体内容 | 来源 | |------|----------|------| | 输入 | 权限清单矩阵、CameraX 功能需求文档、Android 权限变更历史 | 产品 / 开发 / 官方文档 | | 输出 | 权限类型分类表、请求流程节点图、回归测试目标矩阵、用例设计原则文档 | 本阶段生成 | #### 责任边界 | 角色 | 职责范围 | 产出物 | |------|----------|--------| | 测试开发 | 分析权限类型、设计回归用例、绘制流程节点图、输出用例框架 | 用例清单、流程图、目标矩阵 | | 测试执行 | 按用例清单执行回归,记录通过/失败/阻塞,反馈异常 | 执行记录、缺陷报告 | | 开发方 | 确认权限清单准确性,提供测试用的签名包和系统权限配置 | 权限映射确认单 | | 产品方 | 确认权限请求的用户体验要求,提供各版本的预期行为描述 | 用户体验基准文档 | #### 记录材料 所有回归用例相关的记录材料必须统一归档至测试管理系统,命名规则为 `CAMERA_PERMISSION_REGRESSION_v{版本号}_章节编号`。本次总览需包含以下记录材料: - `01_权限类型总览表.xlsx` —— 所有权限的名称、类型、使用场景、最小 API Level。 - `02_请求流程节点图.svg` —— 标准权限请求流程的状态转换图。 - `03_回归测试目标矩阵.xlsx` —— 三类回归目标及其对应的风险等级。 - `04_用例设计原则声明.md` —— 4 条设计原则的详细说明及评审结论。 #### 异常处理
常见异常与预判:在总览阶段发现的权限清单冲突或流程断层,需在后续章节开始前完成闭环。
| 异常场景 | 处理方法 | 记录要求 | |----------|----------|----------| | 权限清单与实际代码不一致 | 提缺陷给开发方,要求在 2 个工作日内更新清单并重审 | 记录在 `异常登记表` 中,注明变更版本号 | | 权限请求流程出现非标准分支(如系统自动授予) | 将该分支纳入回归用例的特殊场景,标记为“系统行为验证” | 在流程节点图中用辅助路径标注(虚线) | | 回归目标与项目排期冲突 | 与产品方、开发方协商,按风险优先级裁剪目标,保留 P0 和 P1 级 | 输出《回归目标裁剪评审纪要》 | #### 验收标准 本章节总览完成的验收标准包含以下 5 点,全部满足后视为通过: 1. **权限清单完整性**:所有 CameraX 使用到的权限(至少 7 类)均在清单中列出,且与代码实际声明一致。 2. **流程节点覆盖率**:标准权限请求流程节点数不少于 5 个,异常分支不少于 3 个。 3. **回归目标可追溯性**:每一条回归目标都能追溯到具体的权限类型或请求阶段。 4. **原则可操作性**:4 条用例设计原则均附带明确的检查表或判断准则。 5. **输出物归档**:所有输入输出物已按命名规则上传至测试管理系统,附带版本号和日期。 --- CameraX 权限请求回归用例总览结构 权限类型 Dangerous / Normal / Signature 请求流程 入口 → 弹窗 → 用户选择 → 回调 回归测试目标 兼容性 / 流程 / 边界 用例设计原则 全覆盖 / 可复用 / 自动化友好 / 异常隔离 适用场景 新特性 / 适配 / 基线 前置条件 权限清单 / 代码 / 环境 输入输出 清单 / 流程图 / 矩阵 验收标准 5 项检查点 用例设计 → 执行 → 迭代 SVG 说明:总览层各要素关系 箭头表示数据流向与依赖