Agentfy
免费试用
应用场景 / QA & 测试自动化

iOS 测试自动化,告别 XCUITest

真机、浏览器里直接开、REST API 对 CI 友好。视觉判断的元素查找连 XCUITest 看不见的第三方 App 都吃得下。

测试宏编写 + 运行历史
测试宏编写 + 运行历史
同样的测试

一个测试,两种完全不同的第一周

在真机上跑一段 iOS 冒烟测试,传统做法和 Agentfy 的做法各自需要什么 —— 一目了然。

传统 XCUITest 套件

光把一个测试跑起来就得搭一下午

首次 · ~4 小时
  • 得维护一台 Mac 构建机,跟 CI runner 一起持续打补丁
  • 证书每 7 天要轮换一次,WebDriverAgent 还要重新编译
  • 测试只能看你自家 App —— 第三方 App 的界面完全看不到
  • Locator 容易漂 —— 辅助功能树随着设计迭代到处变
Agentfy 的做法

接一台手机、写 5 步、随时随处跑

首次 · 60 秒
  • 不要 Mac、不要 Xcode、不要证书 —— iOS App 扫码配对
  • 同一引擎驱动第三方 App(TikTok、银行、社交),靠视觉 + OCR
  • 测试就是一段 .agfm 脚本 —— diff 友好,review 友好
  • 每一步都有截图 + OCR 归档,失败那一步一键回放
真实的测试宏

12 行 .agfm 取代 200 行 XCUITest

同一个登录关键路径、同一组断言 —— 写起来快一半,根本不需要 Mac。

smoke-test_login.agfm agfm
# smoke-test_login.agfm —— 每个发布分支都跑一遍
launch_app "com.example.app"
wait_for_text "Sign in" timeout=5s

tap_by_text "Sign in"
text "[email protected]"
tap_by_text "Continue"
text "${vault.QA_PASSWORD}"
tap_by_text "Log in" exact

# 关键路径断言
wait_for_text "Welcome back" timeout=10s
assert_text "Welcome back"

# 回到 SpringBoard,下一个测试从干净状态开始
press_home
CI 接入

每次运行都进表,REST 都可查

GitHub Actions / CircleCI / Jenkins 触发跑一次,控制台收 pass/fail 和每步截图 —— 任何一行点开都能看完整轨迹。

agentfy.io/macros/runs
5 通过 · 1 失败
测试 设备 步数 耗时 结果 最近运行
smoke-test_login iPhone 11 12 8.3s 通过 12 秒前
smoke-test_login iPhone 13 12 7.9s 通过 14 秒前
smoke-test_login iPhone 15 12 9.1s 通过 11 秒前
regression_checkout_flow iPhone 11 44 1m 12s 通过 2 分前
regression_checkout_flow iPhone 13 44 1m 8s 通过 2 分前
regression_third_party_oauth iPhone 15 18 31s 失败 5 分前

组成模块

接一台 iPhone,写好测试,眼见为实

拿一台 iPhone 接进来,配上,写 5 步的宏,跑一遍,看一眼截图,再迭代。

免费试用