首页
/ 开源项目教程:ATX-Server 全攻略

开源项目教程:ATX-Server 全攻略

2024-08-19 10:46:13作者:霍妲思

项目介绍

ATX-Server 是一款用于智能设备管理的开源工具,特别是针对安卓设备集群的管理和自动化测试。该工具由 Go 语言编写(请注意,项目已经有一个更新的版本在 openatx/atxserver2),它允许测试人员或开发者远程监控和控制多台安卓设备,无需物理连线,只需设备充电连接即可实现集群管理。它与 rethinkdb 数据库集成,提供了一个直观的界面来查看和操作连接的设备。

项目快速启动

环境准备

确保你的开发环境已经配置了 GoRethinkDB。对于 macOS 用户,推荐使用 brew 安装:

brew install go
brew install rethinkdb

获取并构建 ATX-Server

进入工作目录并获取 ATX-Server 源码:

mkdir -p $GOPATH/src/github.com/openatx
cd $_
git clone https://github.com/openatx-archive/atx-server.git
cd atx-server

然后,编译 ATX-Server:

go build

启动 RethinkDB

打开终端,启动 RethinkDB 数据库服务:

rethinkdb

运行 ATX-Server

使用以下命令启动 ATX-Server,假设你希望服务监听在 8000 端口:

./atx-server --port 8000

此时,ATX-Server 应已在本地 8000 端口上运行,你可以通过浏览器访问 http://localhost:8000 查看是否正常启动。

应用案例和最佳实践

设备自动接入

确保你的安卓设备和运行 ATX-Server 的服务器处于同一网络中。通过安装 uiautomator2 配置 ATX-Agent,可以在设备上执行以下命令使得设备注册到 ATX-Server:

adb shell pm grant com.github.uiautomator2.server android.permission.WRITE_SECURE_SETTINGS
adb push <path_to_atx_agent>.apk /data/local/tmp/
adb shell "/data/local/tmp/atx-agent -d"

这里 <path_to_atx_agent> 需要替换为实际的 ATX-Agent APK 路径。

自动化测试集成

ATX-Server 可以被用于持续集成流水线,例如,在 Jenkins 上部署自动化测试套件,每次构建后自动对连接的设备执行测试脚本。

典型生态项目

随着 ATX-Server 的发展,围绕它的生态系统也逐渐形成,包括但不限于:

  • atxserver2: 新版 ATX-Server 用 Python 重写,提供更多现代化的功能和更好的扩展性。
  • uiautomator2: 一个强大的安卓自动化测试工具,与 ATX-Server 高度集成,用于编写和执行测试脚本。
  • AppAutomator: 基于 ATX-Server 进行应用级的自动化测试工具。

通过这些工具和 ATX-Server 的组合,团队能够高效地进行大规模的设备管理和自动化测试实践,特别是在移动应用的开发和维护过程中。


以上就是关于 ATX-Server 的快速入门指南,深入学习和高级功能探索,建议查阅其官方文档和社区资源。

登录后查看全文

项目优选

收起
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
514
555
kernelkernel
deepin linux kernel
C
33
16
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
841
1.29 K
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
1.05 K
2.52 K
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.25 K
1.38 K
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
852
1.72 K
docsdocs
暂无描述
Markdown
858
5.7 K
atomcodeatomcode
Claude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get Started
Rust
3.85 K
589
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
C
876
6.23 K
MindSpeed-MMMindSpeed-MM
华为昇腾面向大规模分布式训练的多模态大模型套件,支撑多模态生成、多模态理解。
Python
165
294