通用动作目录
动作状态
| 动作 | 当前状态 | 文档 |
|---|---|---|
WAIT |
[已实现],条件扩展为 [提案] | wait.md |
CLICK |
[部分实现] | click.md |
INPUT |
[部分实现] | input.md |
BACK |
[已实现],单次分发和验证为 [提案] | back.md |
EXTRACT_TEXT |
[已实现] | extract.md |
EXTRACT |
[提案] | extract.md |
OPEN |
[提案] | open.md |
SCROLL |
[提案] | scroll.md |
SELECT_OPTION |
[提案] | select-option.md |
SCREENSHOT |
[提案] | screenshot.md |
BRANCH |
[提案] | 流程控制 |
当前代码中的动作只有 WAIT、CLICK、INPUT、BACK 和 EXTRACT_TEXT。
统一规则
每个 UI 动作遵循同一条简单流程:
- 校验动作字段、
packageName和可选activityName。 - 在步骤
timeoutMs内等待上下文和目标控件。 - 默认要求目标唯一;多个目标明确失败。
- 执行动作;有副作用的动作默认只分发一次。
- 如果任务提供
after,重新读取页面并验证结果。 - 返回
success、code、message、output和elapsedMs。
动作文件只描述动作特有参数。选择器、条件、输出和结果结构分别引用共享文档。
实现检查清单
- 模型包含动作和参数。
- 解析器校验必要字段、类型和范围。
- 执行器有总超时,不无限等待。
- 驱动只提供 Android 基础能力,不包含目标 App 业务规则。
- 测试覆盖成功、未找到、多个目标、超时和底层失败。
- 文档状态与
ActionType一致。