
HydraLab
一键拉起真实设备云,自动跑测试并智能分析失败原因
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1032
使用教程
环境要求
- 已安装 Docker(Docker Desktop 或 Docker Engine)
- 可访问 ghcr.io 镜像仓库的网络环境
- 默认使用 9886 端口,需保证本机该端口未被占用
- 如需从源码构建:JDK 11、NPM、Android SDK platform-tools
安装与启动步骤
-
1安装 Docker
按官方指引下载并安装 Docker,确保 docker 命令可正常执行;Windows/macOS 可安装 Docker Desktop。
docker --version -
2拉取 Uber 镜像
拉取官方开箱即用镜像 hydra-lab-uber:latest,这一步必须执行,否则可能命中本地缓存的旧 latest 镜像。
docker pull ghcr.io/microsoft/hydra-lab-uber:latest -
3启动容器
运行容器并把容器 9886 端口映射到本机 9886,容器名 hydra-lab;默认使用本地文件系统作为存储方案。
docker run -p 9886:9886 --name=hydra-lab ghcr.io/microsoft/hydra-lab-uber:latest -
4访问管理页面
浏览器打开门户地址查看已连接的设备;若自定义了端口,请把 9886 换成你自己的端口。
-
5跑一个最小测试
页面进入 Runner 标签选 HydraLab Client,点 Run 并将 Espresso test scope 改为 Test app,下一步选设备再 Run;结束后在 Task 标签看结果。
-
6从源码构建运行
需 JDK11、NPM、Android SDK platform-tools;先构建并运行 center 可执行 Jar,再构建运行 agent,然后访问同一门户地址。
cd .. java -jar center/build/libs/center.jar gradlew :agent:bootJar java -jar agent/build/libs/agent.jar
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
-p 9886:9886 | 是 | 端口映射,容器内服务端口为 9886 | -p 9886:9886 |
--name | 否 | 容器名称,便于后续启停管理 | hydra-lab |
存储方案 | 否 | 默认用本地文件系统,官方推荐改用 Azure Blob Storage | Azure Blob Storage |
如何确认成功
浏览器打开 http://localhost:9886/portal/index.html#/ ,能正常显示门户页面并看到已连接的设备即成功。
常见问题
Q:为什么必须先执行 docker pull?
A:若不先拉取,docker run 可能直接使用本地已缓存的 latest 镜像,导致运行的并非最新版本。
Q:Uber 镜像支持哪些 Android 测试?
A:Android 仅支持 Espresso/Instrumentation 测试,更多能力需参考 GitHub Wiki 的用户手册部分。
Q:可以换成别的端口吗?
A:可以,修改 docker run 的端口映射并访问对应端口,例如 -p 8000:9886 后访问 http://localhost:8000/portal/index.html#/。
Q:存储用什么比较好?
A:默认使用本地文件系统即可起步,官方强烈推荐使用 Azure Blob Storage,HydraLab 对其有原生且经过验证的支持。
注意事项
- Uber 镜像已内含 center 与 agent 两个实例,一条 docker run 即可开箱体验。
- 从源码构建运行需要 JDK11、NPM 和 Android SDK platform-tools,环境铺设相对繁琐。
- 更多功能与详细说明请查阅项目 GitHub Wiki。
核心亮点
- 内置 ChatGPT 分析失败日志,直接给出问题定位和修复建议,省去人工排查时间
- 设备农场管理开箱即用,支持远程申请和调度真实手机,无需自建机房
- 提供 REST API 和 CLI,能轻松接入 Jenkins 等 CI/CD 流水线,实现测试自动化
不足之处
- 项目星标过千但更新节奏一般,社区活跃度和文档完善度有待观察
- 对 iOS 设备的支持依赖 Mac 基础设施,部署门槛比纯 Android 方案高
适用场景
- 移动应用团队需要在多台真实设备上快速回归核心功能
- 中小团队想低成本搭建内部云真机测试平台,替代付费云测服务
- 测试人员希望借助 AI 自动分析崩溃和测试失败原因,提升定位效率
替代项目
Appium、Selenium Grid、STF (Smartphone Test Farm)
上一篇:core
下一篇:MyRecipeBook
同类项目推荐
EasyRec
开源
用语言模型搞定推荐,简单有效,无需复杂特征工程
[EMNLP'2025] "EasyRec: Simple yet Effective Language Model for Recommendation"
Taiwan-Health-MCP
开源
让 AI agent 一键接入台湾医疗规范与术语
讓 AI agent 讀懂台灣醫療:63 個 MCP 工具,涵蓋 FHIR R4 / TW Core 驗證、ICD-10、SNOME···
openSAR
开源
Notebook 学 SAR,示例文档一站看
Synthetic Aperture Radar (SAR) Tools and Documents from Earth Big Data LLC
hyufa
开源
让大学生和新人轻松获得AI金融咨询与投资建议
HYUFA is an AI finance assistant for university students and young professionals — ···
AI-Cross-Border-Ecommerce-Agent-···
开源
把跨境运营 SOP 变成 7 个能直接用的 AI 工作流
AI 跨境电商运营智能体工具箱 · 把运营 SOP 拆成 7 个可复用的 AI Agent 工作流,含 Prom···
cloud-volume
开源
用 Python 分块读写云端大脑图像,轻松处理 TB 级数据
Read and write Neuroglancer datasets programmatically.
Awesome-Medical-Large-Language-M···
开源
一页看尽医疗大模型论文,快速跟上领域前沿
Curated papers on Large Language Models in Healthcare and Medical domain
GhostCut-auto_video_translation
开源
一键自动翻译视频硬字幕并配音,轻松实现视频本地化
auto video translation-video translator can auto translate video hard subtitles, aut···
flyingmouse-format
开源
Windows 离线全能格式转换,文档图片音视频一键互转
飞鼠格式 FlyingMouse Format - Windows 免费文件格式转换工具(离线可用,内置 FFmpeg/Li···