Appium Device Farm Dashboard使用指南:5大功能实时掌握会话、构建与设备状态

发布时间:2026/11/5 7:41:04
Appium Device Farm Dashboard使用指南:5大功能实时掌握会话、构建与设备状态

【免费下载链接】appium-device-farm

This is an Appium 2.0 plugin designed to manage and create driver sessions on available devices.

项目地址:https://gitcode.com/gh_mirrors/ap/appium-device-farm
点击查看免费下载

Appium Device Farm 是一个 Appium 2.0 插件,用于在多台 Android、iOS、tvOS 真机、模拟器和模拟器上批量创建和管理 driver 会话。它的 Dashboard 是这套「自建设备农场」的可视化控制中心:登录一个浏览器页面,就能实时查看设备状态、测试构建、会话日志、应用包管理和统计数据,无需在多台机器间来回切换。

上图展示了 Device Farm 的典型部署方式:客户端(CI 任务或本地脚本)把会话请求发给 Hub 机器,Hub 再自动把请求分发到各个 Node 机器上已连接的设备。整个 Dashboard 就运行在 Hub 节点上,是所有设备的统一入口。

打开 Dashboard:登录与整体布局

自 10.0 版本起,Dashboard 内置了用户与团队认证模块。首次启动插件后,用管理员创建的账号登录后,顶部导航会出现四个核心页签:

页签作用对应源码
Devices查看所有设备的实时状态device-explorer.tsx
Builds查看测试构建与每个会话详情build-container.tsx
Apps上传与管理测试应用包Apps.tsx
Stats测试通过率、设备使用率等图表trends.tsx

功能一:Devices 设备页——实时掌握设备状态

进入 Devices 页面,所有节点上的设备以卡片形式平铺展示,每张卡片包含:

  • 状态标记:Ready(空闲)、Busy(被会话占用)、Offline(离线)
  • 平台与系统版本:如 iPhone 15 Pro Max / iOS 18.2
  • 设备类型:真机(real)还是模拟器(Emulator)
  • 占用时长:设备被使用的累计时间,方便发现长期未释放的设备
  • Use Device / Block按钮:一键把设备标记为可用或临时拉黑(如设备故障时)

页面顶部支持按平台(Android / iOS)、状态筛选,还能按设备名或 UDID 搜索。多节点部署时,所有 Node 的设备会汇总在同一个列表里。

功能二:Builds 构建页——按测试构建追踪结果

每次 CI 任务(如一次 Jenkins 构建)会创建一个 Build,同一次构建中的全部会话都挂在它下面。Builds 页面左侧列出所有构建及其通过/失败/未标记数量徽章,右侧是本次构建的会话明细表:

  • Test Name:每条测试用例的名称
  • Platform / Device Version:会话落在哪个平台、哪个系统版本
  • Status:passed / failed / unmarked 一目了然
  • Start Time、Duration:定位慢用例和失败时间点

顶部还可以切换时间范围(如 Last 24 hours)和关键字过滤,快速定位最近的失败构建。

功能三:会话详情——日志、截图与能力信息

点击某条 Build 中的会话,进入会话详情页,这是排障最核心的界面:

  • 会话元信息:设备名、平台、OS 版本、开始时间、时长、状态
  • 四类日志页签:
    • Text Logs:测试执行命令流,支持勾选Show Screenshots让每条操作内嵌设备截图,勾选Show Errors Only只看报错
    • Device Logs:设备侧日志(logcat / syslog)
    • Debug Logs:插件调试日志
    • App Profiling:应用性能剖析
  • 右侧信息区:会话录屏回放、Desired Capabilities 与 Session Capabilities 对照表

出现偶发失败时,通常在这一个页面内就能完成「定位命令 → 看截图 → 查设备日志」的完整排查。

会话日志页签的实现见 session-logs.tsx。

功能四:Apps 应用页——统一管理测试应用包

Apps 页面用于集中上传和管理测试用的应用包(.apk / .ipa / 签名后的 WDA 等):

  • 左上角Upload Apps上传应用
  • 列表展示应用名、平台、文件大小、上传日期
  • Automation FileName列是自动化入口:写测试时只需在 capabilities 里传appium:app指向文件名,Device Farm 就会自动把对应包推送到目标设备安装,无需在每条测试里写本地路径

这一能力让「同一份测试代码 + 不同版本应用」的兼容性回归非常顺手——CI 里只要换一下 automationName 参数即可。

功能五:Stats 统计页——用数据看测试大盘

Stats 页面把历史数据聚合为一组图表,适合周报和容量评估:

  • Test Trends:各构建的通过/失败/未标记数量柱状图
  • Build Statistics:按构建维度看通过率环形图
  • Device Usage:哪台设备跑得最多,识别「明星设备」或故障高发设备
  • Test Duration Trend / Distribution:用例耗时趋势与分布,发现性能劣化
  • Test Count Over Time / Device Pass Percentage:测试量走势与设备级通过率

常见问题速查

问题排查方向
设备一直显示 Busy到 Builds 页查是否有残留会话;必要时在 Devices 页 Block 该设备
会话失败但不知原因进会话详情,先开 Text Logs 的 Show Screenshots,再看 Device Logs
新应用装不上到 Apps 页确认包已上传,检查 capabilities 中appium:app与 Automation FileName 一致
看不到某台设备确认该 Node 已加入 Hub,且设备状态不是 Offline

Dashboard 的后端 API 挂载在/device-farm/api/dashboard路径下(见 dashboard/index.ts),前端源码整体位于 dashboard-frontend/ 目录,便于二次开发。

小结

Appium Device Farm 的 Dashboard 用四个页签解决了自建设备农场的日常运营:Devices 看设备、Builds 看结果、会话详情查原因、Apps 管应用、Stats 做决策。对新手而言,只要记住「先登录 → 在 Devices 页确认设备 Ready → 跑完测试到 Builds 页点进会话看日志」这一条主线,就能快速上手。配合 Hub/Node 架构横向扩展节点,这套 Dashboard 可以平滑支撑从小团队到多机房规模的自动化测试。

【免费下载链接】appium-device-farm

This is an Appium 2.0 plugin designed to manage and create driver sessions on available devices.

项目地址:https://gitcode.com/gh_mirrors/ap/appium-device-farm
点击查看免费下载
上一篇:如何迁移到qui:从官方WebUI无缝过渡
下一篇:让Tailnet直达K8s节点:terraform-hcloud-kubernetes集成Tailscale系统扩展完全指南

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考