Skip to content
Back to skills

Hmos Accessibility Kit Test Screen Reader

ASecurity

测试屏幕朗读功能的启用状态、效果验证、手势操作和应用适配情况,提供验证测试流程和检查清单,适用于应用无障碍功能验收测试场景

  • 2 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 22, 2026
testingapi

Works with

  • api

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned September 22, 2026

npx -y skills add IsKenKenYa/skills --skill hmos-accessibility-kit-test-screen-reader --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Hmos Accessibility Kit Test Screen Reader?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Hmos Accessibility Kit Test Screen Reader
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/iskenkenya-hmos-accessibility-kit-test-screen-reader/badge)](https://www.skillsdirectory.com/skills/iskenkenya-hmos-accessibility-kit-test-screen-reader)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: hmos-accessibility-kit-test-screen-reader
description: 测试屏幕朗读功能的启用状态、效果验证、手势操作和应用适配情况,提供验证测试流程和检查清单,适用于应用无障碍功能验收测试场景
---

# 测试屏幕朗读功能技能

## 功能描述

本技能提供屏幕朗读功能的完整测试验证方案,包括启用状态验证、效果测试、手势操作验证和应用适配检查。通过本技能,可以系统地验证应用的无障碍功能是否符合屏幕朗读使用要求,确保视障用户能够顺畅使用应用。

屏幕朗读功能是 Accessibility Kit 的核心能力之一,使用户无需查看屏幕即可与设备进行互动。本技能专注于测试验证环节,帮助开发者完成功能验收测试。

## 使用场景

### 触发词
- "测试屏幕朗读"
- "验证屏幕朗读"
- "屏幕朗读测试"
- "无障碍测试"
- "Accessibility测试"
- "屏幕朗读验证"

### 能做
- 验证屏幕朗读开关启停状态是否正常
- 测试常规开启和快捷开启两种方式的可用性
- 验证触摸浏览和线性浏览两种导航模式
- 测试屏幕朗读常用手势操作(基本手势、往复手势、角度手势)
- 检查应用元素的语音反馈是否恰当
- 验证应用主要工作流程的可完成性
- 检查提醒和临时消息的播报情况
- 提供测试检查清单和验证报告模板

### 绝不做
- 不开发屏幕朗读功能实现代码
- 不修改屏幕朗读系统配置
- 不创建辅助功能扩展能力(AccessibilityExtensionAbility)
- 不处理屏幕朗读事件监听
- 不执行屏幕朗读手势注入

### 补充
- 本技能专注于测试验证环节,适合QA测试人员和应用开发者使用
- 测试前需确保应用已完成无障碍适配开发
- 测试需在真实设备或模拟器上进行
- 建议结合Accessibility Kit开发指南使用

## 调用规范和规则

### 输入约束
- 测试设备:必须是HarmonyOS设备或模拟器
- 测试应用:必须已安装并完成基本无障碍适配
- 测试环境:屏幕朗读功能必须可正常启用
- 测试人员:需熟悉屏幕朗读基本操作

### 执行约束
- 最大测试时长:30分钟完整测试流程
- 测试步骤:按照启用验证→效果验证→手势验证→应用验证顺序执行
- 测试记录:必须记录每步测试结果
- 问题报告:发现问题时必须详细记录现象和场景

### 内容约束
- 禁止跳过必要测试步骤
- 禁止在未启用屏幕朗读情况下测试
- 禁止忽略测试失败项
- 禁止省略测试报告

### 降级约束
- 设备不支持屏幕朗读:提示使用支持的设备
- 应用未适配:提示完成适配后再测试
- 测试环境异常:记录异常并提供排查建议
- 测试失败:提供问题诊断和修复建议

## 调用流程和步骤

### 步骤1:准备测试环境

**前置校验**:
1. 检查设备是否支持屏幕朗读功能
2. 确认测试应用已安装
3. 确认测试人员熟悉基本操作

**环境准备**:
- 设备设置进入"设置 > 辅助功能 > 屏幕朗读"
- 记录初始屏幕朗读状态

### 步骤2:启用操作验证

**常规开启验证**:

测试步骤:
1. 打开设备的"设置"应用
2. 单击"辅助功能"选项
3. 单击"屏幕朗读"选项
4. 打开"屏幕朗读"开关
5. 在安全提醒对话框中,选择知晓风险后,开启屏幕朗读
6. 验证屏幕朗读是否成功启用(观察界面变化和语音提示)

**验证要点**:
- 设置路径是否正确
- 开关响应是否正常
- 安全提醒对话框是否显示
- 启用后是否有语音反馈
- 启用后界面是否有变化

**快捷开启验证**:

测试步骤:
1. 打开设备的"设置"应用
2. 单击"辅助功能"选项
3. 单击"辅助功能快捷键"选项
4. 打开"辅助功能快捷键"开关,选择功能为"屏幕朗读"
5. 可选:开启"屏幕锁定时可用"开关
6. 同时按下音量上下键3秒
7. 验证是否可以快捷开启/关闭屏幕朗读

**验证要点**:
- 快捷键设置是否可正常配置
- 音量键组合是否响应正常
- 快捷开启是否生效
- 快捷关闭是否生效
- 锁屏状态下是否可用(如已开启)

### 步骤3:屏幕朗读效果验证

**触摸浏览测试**:

测试场景:用户在屏幕上移动手指触摸相应界面

测试步骤:
1. 开启屏幕朗读功能
2. 在屏幕上移动手指触摸不同界面元素
3. 验证是否可以听到手指正下方触摸选中内容的播报
4. 检查播报内容是否准确
5. 检查播报时机是否合适

**验证要点**:
- 触摸响应是否及时
- 播报内容是否准确描述元素
- 播报是否流畅清晰
- 元素识别是否正确

**线性浏览测试**:

测试场景:用户在屏幕上滑动手指来移动焦点

测试步骤:
1. 开启屏幕朗读功能
2. 在屏幕上滑动手指移动焦点
3. 验证从上到下线性阅读是否正常
4. 验证焦点元素播报是否正常
5. 检查焦点移动顺序是否符合逻辑

**验证要点**:
- 焦点移动是否顺畅
- 焦点播报是否准确
- 焦点顺序是否符合界面布局
- 滑动方向是否正确响应

### 步骤4:屏幕朗读常用手势验证

**基本手势测试**:

| 操作 | 手势 | 测试验证点 |
|------|------|-----------|
| 移至屏幕的下一项内容 | 向右滑动/向下滑动 | 验证焦点移动到下一项 |
| 移至屏幕的上一项内容 | 向左滑动/向上滑动 | 验证焦点移动到上一项 |
| 点击/选择所在项 | 点按两次 | 验证是否触发点击操作 |
| 长按 | 点按两次后长按 | 验证是否触发长按操作 |
| 横滑 | 双指滑动 | 验证是否触发横滑操作 |

测试步骤:
1. 对每个手势进行单独测试
2. 记录手势响应情况
3. 检查操作执行结果
4. 统计成功率

**往复手势测试**:

| 操作 | 手势 | 测试验证点 |
|------|------|-----------|
| 上一个导航设置 | 先向上再向下 | 验证导航设置切换 |
| 下一个导航设置 | 先向下再向上 | 验证导航设置切换 |
| 向下(后)滚动一个页面 | 先向右再向左 | 验证页面滚动 |
| 向上(前)滚动一个页面 | 先向左再向右 | 验证页面滚动 |

测试步骤:
1. 测试每个往复手势
2. 检查组合手势识别是否正确
3. 验证操作执行结果

**角度手势测试**:

| 操作 | 手势 | 测试验证点 |
|------|------|-----------|
| 主屏幕 | 先向上再向左 | 验证返回主屏幕 |
| 返回 | 先向下再向左 | 验证返回操作 |
| 通知栏 | 先向上再向右 | 验证打开通知栏 |
| 最近运行过的应用 | 先向下再向右 | 验证打开最近任务 |
| 快捷菜单 | 先向右再向下 | 验证打开快捷菜单 |
| 打开控制中心 | 先向左再向下 | 验证打开控制中心 |
| 操作编辑框 | 先向左再向上 | 验证编辑框操作 |

测试步骤:
1. 测试每个角度手势
2. 检查手势方向识别是否正确
3. 验证系统操作执行结果

**手势自定义设置**:

测试步骤:
1. 进入"设置 > 辅助功能 > 屏幕朗读 > 更多设置 > 自定义快捷手势"
2. 查看可自定义的手势选项
3. 测试自定义手势设置是否生效

### 步骤5:使用屏幕朗读浏览应用

**应用浏览测试**:

测试步骤:
1. 打开测试应用
2. 按顺序滑动浏览各个元素
3. 记录浏览过程中发现的问题

**检查清单**:

- 每个元素的语音反馈是否恰当地传达了其内容或用途?
- 您能否轻松完成主要工作流程?
- 您能否通过滑动浏览每个元素?
- 如果出现提醒或其他临时消息,屏幕朗读能否读出来?
- 界面元素是否都有无障碍标签?
- 元素的无障碍描述是否准确?
- 焦点移动顺序是否合理?
- 重要元素是否可获得焦点?

**问题记录模板**:

```json
{
  "测试场景": "场景描述",
  "问题现象": "详细描述问题",
  "问题类型": "播报问题/操作问题/焦点问题/其他",
  "严重程度": "严重/中等/轻微",
  "建议解决方案": "建议的修复方案"
}
```

### 步骤6:高级设置验证

**屏幕朗读设置选项验证**:

测试步骤:
1. 进入"设置 > 辅助功能 > 屏幕朗读 > 更多设置"
2. 验证以下设置选项:
   - 语速设置
   - 语调设置
   - 其他相关设置

验证要点:
- 各设置项是否可正常调整
- 设置调整后效果是否生效
- 设置保存是否正常

### 步骤7:生成测试报告

**测试报告结构**:

```json
{
  "测试日期": "YYYY-MM-DD",
  "测试人员": "姓名",
  "测试设备": "设备型号和版本",
  "测试应用": "应用名称和版本",
  "测试结果": {
    "启用操作验证": "通过/失败",
    "效果验证": "通过/失败",
    "手势验证": "通过/失败",
    "应用适配验证": "通过/失败"
  },
  "问题列表": [
    {
      "序号": 1,
      "问题描述": "",
      "严重程度": "",
      "建议方案": ""
    }
  ],
  "总体评价": "良好/一般/较差",
  "改进建议": ""
}
```

## 错误码说明

| 错误码 | 说明 | 解决方法 |
|-------|------|---------|
| ENV_NOT_SUPPORTED | 设备不支持屏幕朗读功能 | 使用支持屏幕朗读的HarmonyOS设备 |
| APP_NOT_INSTALLED | 测试应用未安装 | 安装测试应用后再进行测试 |
| SCREEN_READER_NOT_ENABLED | 屏幕朗读未启用 | 先启用屏幕朗读功能 |
| GESTURE_NOT_RESPONSED | 手势操作无响应 | 检查屏幕朗读设置和手势配置 |
| FEEDBACK_INCORRECT | 语音反馈不准确 | 检查元素的无障碍属性设置 |
| FOCUS_ORDER_WRONG | 焦点移动顺序不合理 | 调整元素的焦点顺序属性 |
| ELEMENT_NOT_ACCESSIBLE | 元素无法被屏幕朗读访问 | 为元素添加无障碍属性 |
| ALERT_NOT_READ | 提醒消息未被播报 | 检查提醒组件的无障碍配置 |

## 编译和修复问题

### 测试环境要求
- HarmonyOS设备或模拟器:API version 7及以上
- 屏幕朗读功能:设备必须支持
- 测试应用:必须完成基本开发并安装

### 常见测试问题

**问题1:屏幕朗读无法启用**
```
错误现象:打开屏幕朗读开关后无响应
```
**解决方法**:
- 检查设备是否支持屏幕朗读功能
- 检查系统版本是否满足要求
- 重启设备后再次尝试

**问题2:手势操作不生效**
```
错误现象:执行手势后无响应或响应错误
```
**解决方法**:
- 检查屏幕朗读是否正确启用
- 检查手势是否按照规范执行
- 查看自定义手势设置

**问题3:元素播报不准确**
```
错误现象:屏幕朗读播报的内容与元素实际功能不符
```
**解决方法**:
- 检查元素的accessibilityText属性
- 检查元素的accessibilityDescription属性
- 调整无障碍属性设置

**问题4:焦点顺序不合理**
```
错误现象:焦点移动顺序不符合界面布局逻辑
```
**解决方法**:
- 检查元素的焦点顺序属性
- 调整元素的groupPriority属性
- 优化界面布局结构

## 常见问题与解决方法

### Q1:如何判断屏幕朗读是否已启用?
**判断方法**:
- 方法1:进入"设置 > 辅助功能 > 屏幕朗读"查看开关状态
- 方法2:观察界面是否有屏幕朗读焦点指示器
- 方法3:触摸界面元素是否有语音播报

### Q2:测试中发现播报内容不准确怎么办?
**原因**:元素的无障碍属性设置不当
**解决方法**:
- 检查元素的accessibilityText属性设置
- 检查元素的accessibilityDescription属性设置
- 确保播报内容准确描述元素功能和用途
- 参考开发指南调整无障碍属性

### Q3:焦点无法到达某些元素怎么办?
**原因**:元素未设置无障碍属性或属性设置错误
**解决方法**:
- 检查元素的accessibilityGroup属性
- 检查元素的accessibilityLevel属性
- 确保元素可以被屏幕朗读访问
- 为元素添加必要的无障碍属性

### Q4:测试应用时某些提醒消息未被播报怎么办?
**原因**:提醒组件未配置无障碍属性
**解决方法**:
- 检查提醒组件的无障碍配置
- 为提醒组件添加announceForAccessibility事件
- 确保提醒消息可以主动播报

### Q5:如何处理复杂的测试场景?
**建议方法**:
- 将复杂场景拆分为多个简单测试步骤
- 为每个步骤设置明确的验证点
- 详细记录每步测试结果
- 发现问题时立即记录并继续测试

## 输出结果报告

测试完成后输出以下信息:

```json
{
  "status": "测试完成",
  "test_date": "YYYY-MM-DD HH:MM:SS",
  "test_duration": "测试用时(分钟)",
  "test_results": {
    "enable_verification": {
      "normal_enable": "通过/失败",
      "shortcut_enable": "通过/失败"
    },
    "effect_verification": {
      "touch_explore": "通过/失败",
      "linear_browse": "通过/失败"
    },
    "gesture_verification": {
      "basic_gestures": "通过率(%)",
      "reciprocal_gestures": "通过率(%)",
      "angle_gestures": "通过率(%)"
    },
    "app_verification": {
      "browse_completion": "通过/失败",
      "workflow_completion": "通过/失败",
      "alert_read": "通过/失败"
    }
  },
  "issues_found": "问题数量",
  "overall_rating": "良好/一般/较差",
  "api_used": [
    "屏幕朗读系统功能",
    "屏幕朗读手势操作",
    "屏幕朗读设置选项"
  ]
}
```

## 参考文档

- [测试屏幕朗读功能指南](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/test-screen-reader)
- [Accessibility Kit API参考](https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-accessibility)
- [AccessibilityExtensionAbility API参考](https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-application-accessibilityextensionability)

## 完整测试用例

- [屏幕朗读启用测试用例](tests/test_enable_screen_reader.md)
- [屏幕朗读手势测试用例](tests/test_screen_reader_gestures.md)
- [应用适配测试用例](tests/test_app_screen_reader_adapter.md)
- [完整测试检查清单](tests/test_checklist.md)

## 测试辅助资源

- [测试报告模板](assets/test_report_template.json)
- [问题记录模板](assets/issue_record_template.json)
- [测试检查清单](assets/test_checklist.md)

Files in this skill

  • SUB_SKILL.md14 KB
  • assets/issue_record_template.json2.9 KB
  • assets/test_checklist.md960 B
  • assets/test_report_template.json4.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…