Agent Skillsaresbit/MateBot › harmonyos-test-cases

harmonyos-test-cases

GitHub

HarmonyOS UI自动化测试技能,支持用例存储、执行与保存。通过文本/ID定位元素实现屏幕适配,管理JSON格式用例并验证应用功能,适用于运行、创建及列出测试流程。

skills/harmonyos-skills/skills/harmonyos-test-cases/SKILL.md aresbit/MateBot

Trigger Scenarios

运行测试 执行测试用例 验证XX功能 把这个测试流程保存下来

Install

npx skills add aresbit/MateBot --skill harmonyos-test-cases -g -y
More Options

Non-standard path

npx skills add https://github.com/aresbit/MateBot/tree/master/skills/harmonyos-skills/skills/harmonyos-test-cases -g -y

Use without installing

npx skills use aresbit/MateBot@harmonyos-test-cases

指定 Agent (Claude Code)

npx skills add aresbit/MateBot --skill harmonyos-test-cases -a claude-code -g -y

安装 repo 全部 skill

npx skills add aresbit/MateBot --all -g -y

预览 repo 内 skill

npx skills add aresbit/MateBot --list

SKILL.md

Frontmatter
{
    "name": "harmonyos-test-cases",
    "description": "HarmonyOS UI 自动化测试用例管理和执行技能。用于存储、管理和执行 UI 测试用例,验证应用功能是否正常。支持通过组件文本\/ID定位元素,自动适配不同屏幕尺寸。使用场景:(1) 执行已保存的测试用例 (2) 保存新的测试用例 (3) 列出所有测试用例 (4) 用户说\"运行测试\"、\"执行测试用例\"、\"验证XX功能\"、\"把这个测试流程保存下来\"。"
}

HarmonyOS 测试用例管理

功能概述

  • 存储测试用例: JSON 格式保存测试步骤和预期结果
  • 执行测试用例: 自动化执行 UI 操作并验证结果
  • 屏幕适配: 通过组件文本/ID 定位,而非固定坐标
  • 易于扩展: 添加新测试用例只需创建 JSON 文件

快速开始

列出所有测试用例

python3 $SKILL_DIR/scripts/run_test.py --list

执行测试用例

python3 $SKILL_DIR/scripts/run_test.py photos_favorite

# 多设备场景建议显式指定
python3 $SKILL_DIR/scripts/run_test.py photos_favorite --device 127.0.0.1:5555

# 失败即停,便于快速定位
python3 $SKILL_DIR/scripts/run_test.py photos_favorite --fail-fast

保存当前操作为测试用例

当用户教你一步步执行完一个测试流程后,可以说"把这个测试用例保存下来",我会:

  1. 将操作步骤转换为 JSON 格式
  2. 使用组件文本/ID 定位(非固定坐标)
  3. 保存到 testcases/ 目录

测试用例格式

{
  "id": "test_id",
  "name": "测试名称",
  "description": "测试描述",
  "app": "com.example.app",
  "tags": ["标签1", "标签2"],
  "steps": [
    {
      "step": 1,
      "action": "click",
      "description": "点击按钮",
      "params": {
        "locator": {
          "type": "text",
          "value": "确定"
        }
      },
      "expected": "应该跳转到下一页"
    }
  ],
  "teardown_steps": []
}

支持的操作类型

action 说明 params
launch_app 启动应用 locator - 应用图标定位
click 点击 locator - 组件定位
wait 等待 duration - 秒数
key_event 按键 value - Back/Home 等
swipe 滑动 coordsstart_locator/end_locator
verify 验证 locator - 要验证的组件
capture_count 记录组件数量基线 key + locator
verify_count_delta 验证数量变化 key + locator + allowed_deltas

定位器类型

type 说明 示例
text 按文本查找 {"type": "text", "value": "设置"}
id 按ID查找 {"type": "id", "value": "ToolBarButtonFavor"}

已有测试用例

用例 描述
photos_favorite 图库收藏/取消收藏功能测试

添加新测试用例

  1. testcases/ 目录创建 JSON 文件
  2. 按格式编写测试步骤
  3. 使用 run_test.py 执行验证

工作流程

当用户完成一个测试流程后,我会:

  1. 记录步骤: 将每一步操作转换为标准格式
  2. 提取定位器: 使用 harmonyos-ui-automator 技能获取组件的 text 或 id
  3. 保存用例: 写入 JSON 文件到 testcases/ 目录
  4. 验证格式: 确保用例可以正常执行

注意事项

  • 多设备同时在线时,建议传 --device,避免操作到错误设备
  • 定位器优先使用 text,其次是 id
  • coords 仅作为兜底(动态页面或无稳定 locator 时),优先用 locator
  • 每个步骤应包含清晰的 descriptionexpected
  • teardown_steps 用于测试后恢复环境

快速自检

bash $SKILL_DIR/scripts/smoke_test.sh

Version History

  • 2328a17 Current 2026-08-20 10:31

Same Skill Collection

matecode/SKILL.md
skills/3d-cad-skill/SKILL.md
skills/agent-browser/SKILL.md
skills/arkts-agent-skill/SKILL.md
skills/autoresearch-skill/SKILL.md
skills/baoyu-post-to-wechat/SKILL.md
skills/blogwatcher/SKILL.md
skills/c-skill/SKILL.md
skills/chrome-cdp/SKILL.md
skills/claudeception/.claude/skills/continuous-learning/SKILL.md
skills/claudeception/examples/nextjs-server-side-error-debugging/SKILL.md
skills/claudeception/examples/prisma-connection-pool-exhaustion/SKILL.md
skills/claudeception/examples/typescript-circular-dependency/SKILL.md
skills/claudeception/SKILL.md
skills/clawdhub/SKILL.md
skills/coding-agent/SKILL.md
skills/docx/SKILL.md
skills/ebook/book-architect/SKILL.md
skills/ebook/book-idea-validator/SKILL.md
skills/ebook/book-ideation/SKILL.md
skills/ebook/book-market-research/SKILL.md
skills/ebook/chapter-architect/SKILL.md
skills/elf-patcher/SKILL.md
skills/excalidraw-diagram-skill/SKILL.md
skills/frontend-slides/SKILL.md
skills/gemini/SKILL.md
skills/gifgrep/SKILL.md
skills/git-wt/SKILL.md
skills/github/SKILL.md
skills/harmonyos-code-review/SKILL.md
skills/harmonyos-linux-cli-dev/SKILL.md
skills/harmonyos-skills/skills/harmonyos-game-generator/SKILL.md
skills/harmonyos-skills/skills/harmonyos-ui-automator/SKILL.md
skills/harmonyos-skills/skills/ohos-app-build-debug/SKILL.md
skills/hm-fetch-skill/SKILL.md
skills/hm-framework-skill/SKILL.md
skills/humanizer/SKILL.md
skills/ian-gemini-web/SKILL.md
skills/kernel-dev-skill/SKILL.md
skills/kimi/docx_SKILL.md
skills/kimi/pdf_SKILL.md
skills/kimi/SKILL.md
skills/kimi/webapp-building_SKILL.md
skills/lecture-skill/SKILL.md
skills/macos-menubar-tuist-app/SKILL.md
skills/macos2linuxapp/SKILL.md
skills/matecode/SKILL.md
skills/medialibrary-ut-generator/SKILL.md
skills/mermaid-validator/SKILL.md

Metadata

Files
0
Version
2328a17
Hash
83b5511e
Indexed
2026-08-20 10:31

- 위키
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-25 07:35
浙ICP备14020137号-1 $방문자$