AXe

2周前发布 11 00

AXe 是一个功能完备的命令行工具,利用 Apple 的 Accessibility API 和 HID(人机接口设备)模拟能力,实现对 iOS 模拟器的深度自动化控制。无需依赖 XCUITest 或私有框架,AXe 可直接模拟用户在真实设备上的所有操作,适用于测试、演示、录制与自动化工作流。

所在地:
美国
收录时间:
2025-12-17

一个基于 Apple 无障碍接口与人机交互设备(HID)功能的 iOS 模拟器命令行自动化工具

AXe 是一个功能完备的命令行工具,利用 Apple 的 Accessibility API 和 HID(人机接口设备)模拟能力,实现对 iOS 模拟器的深度自动化控制。无需依赖 XCUITest 或私有框架,AXe 可直接模拟用户在真实设备上的所有操作,适用于测试、演示、录制与自动化工作流。

AXe

核心功能

1. 触控与手势控制

  • 精准点击:在指定坐标触发触摸事件,支持自定义按下/释放时长
  • 多点滑动:可配置速度、持续时间与轨迹增量的滑动手势
  • 底层触控:直接发送 touchDown / touchUp 事件,用于构建自定义复杂手势
  • 预设手势:开箱即用的常用操作,包括:
    • 上滚 / 下滚(scroll up/down)
    • 左滑 / 右滑(swipe left/right)
    • 边缘滑动(edge swipe,常用于返回或唤出侧边栏)

2. 文本与键盘输入

  • 智能文本输入:自动处理大小写(Shift 键),支持完整 ASCII 与 Unicode 字符
  • 单键按下:通过标准 HID 键码发送按键事件(如 Enter、Space、Esc)
  • 按键序列:支持带时间间隔的多键组合(例如 Cmd+CCtrl+L
  • 灵活输入源
    • 直接传入字符串
    • 从标准输入(stdin)读取
    • 从文件加载内容

3. 硡件按钮模拟

AXe 可精确模拟物理设备上的所有硬件按钮行为:

  • Home 按钮:返回主屏幕
  • 电源/锁定键:支持短按(锁屏)与长按(关机/重启)
  • 侧边按钮(Side Button):iPhone X 及更新机型的电源/唤醒键
  • Siri 按钮:触发 Siri 语音助手
  • Apple Pay 按钮:模拟双击侧边按钮唤出 Apple Pay

4. 精确时序控制

  • 操作延迟:在每条命令前/后插入可配置的等待时间
  • 手势持续时间:控制滑动、长按等操作的执行时长(毫秒级精度)
  • 序列间隔:在按键或手势序列中插入自定义停顿
  • 多步骤工作流:组合多个带时序的指令,构建复杂自动化脚本

5. 视频录制与流媒体

  • 实时视频流:以 1–30 FPS 持续捕获模拟器画面
  • 多格式输出
    • MJPEG(网络流)
    • 原始 JPEG 序列
    • ffmpeg 兼容格式(便于后处理)
    • BGRA 像素缓冲(用于自定义渲染)
  • H.264 硬件编码:通过 axe record-video 直接生成高效 MP4 文件
  • 画质调节:可配置 JPEG 压缩质量与输出缩放因子(如 0.5x 降低分辨率)
  • 低延迟设计:优化帧捕获时序,保障录制流畅性

6. 无障碍信息与模拟器管理

  • UI 元素探测
    • 获取屏幕任意坐标的无障碍描述(accessibility label、value、traits)
    • 提取全屏 UI 层级结构(用于断言或状态检测)
  • 模拟器枚举:列出当前系统中所有可用的 iOS 模拟器设备(UDID + 名称 + 状态)

🛠️ 典型应用场景

  • 自动化 UI 回归测试(无需侵入 App 代码)
  • 演示视频录制(支持带手势的完整操作流)
  • Accessibility 合规性验证
  • 跨版本 iOS 行为对比
  • CI/CD 中的无头模拟器交互

数据统计

相关导航

暂无评论

none
暂无评论...