工程开发
axe avatar

axe

提供 iOS 模拟器自动化的 AXe CLI 指导,包含触控、手势、文本输入、硬件按钮模拟、无障碍检测、视频录制以及批次工作流执行。

简介

AXe 是一款专业级的命令行工具,专为使用 Apple 原生无障碍 API 和人机界面设备 (HID) 事件对 iOS 模拟器进行全面自动化而设计。此技能允许代理程序以程序化方式控制模拟器环境,使其成为自动化 UI 测试、无障碍审计和复杂交互脚本编写的重要工具。它使开发人员和 QA 工程师无需手动操作即可在各种 iOS 设备配置中模拟真实用户行为,从而促进快速迭代和回归测试。

  • 精确的触控控制,包括基于坐标的点击、滑动和多点触控手势。

  • 高级文本输入管理,支持直接输入、标准输入 (stdin) 和基于文件的注入,并具备自动处理 Shift 键的功能。

  • 硬件按钮模拟,包含 Home 键、锁定键、侧边键、Siri 和 Apple Pay 按钮。

  • 深度无障碍集成,通过 describe-ui 指令提取 UI 组件层级、标识符 (identifiers) 和标签 (labels)。

  • 高效的批次处理功能,允许将多个交互步骤链接成单一执行回合,以减少延迟和开销。

  • 多媒体功能,包括高质量 PNG 屏幕截图和 H.264 MP4 视频录制。

  • 可配置的计时控制,包括预延迟 (pre-delay) 和后延迟 (post-delay),有效处理动画和 UI 状态转换。

  • 请务必使用 axe list-simulators 确认目标设备,并确保所有 HID 指令皆使用 --udid 旗标。

  • 优先选择基于选择器的交互 (--id 或 --label) 而非原始坐标,以确保跨不同屏幕尺寸和 UI 配置的稳定性。

  • 在批次处理期间使用 --wait-timeout 旗标,以应对应用程序加载时间和网络相关的视图转换。

  • 验证至关重要;在交互步骤后跟随 describe-ui 或 screenshot 来确认预期的应用程序状态,因为 HID 事件是“发送即忘”的。

  • 若文本输入中需要包含对 Shell 敏感的字符,请优先使用 --stdin 或 --file 参数,以防止指令注入或解析错误。

  • 对于复杂的工作流,请利用批次链接来顺序执行序列,确保每个步骤在下一个步骤开始前完成。

仓库统计

Star 数
1,849
Fork 数
71
Open Issue 数
9
主要语言
Swift
默认分支
main
同步状态
空闲
最近同步时间
2026年5月1日 08:38
在 GitHub 查看