【发布时间】:2020-02-09 09:33:09
【问题描述】:
我目前正在从事一个严重依赖 appium / selenium 进行自动化的项目。这些框架非常适合开始使用,但稳健性并不完全,并且需要大量额外的硬件/软件来运行自动化。如macOS、xcode、adb、appium、selenium、usb连接或通过WIFI连接(我们目前必须使用的)。这个自动化堆栈中只有很多依赖项,如果有一个更清洁、更可靠和可扩展的解决方案,那就太好了。
所以我想知道。有没有人知道一种通过 REST api 为 iOS 和 Android 运行自动化的方法,该方法使用直接位于设备上的服务器,允许我们与设备通信,例如 curl -POST <device_ip>:<port>/session/{sessionId}/openApp。
想想 Facebook 构建的 WebDriverAgent,但该代理不是使用 xcodebuild 构建的,而是存在于设备上。本质上,当您构建此框架时,它会启动我正在描述的服务器,但它依赖于 xcode,并且我最终希望将 xcode 不必出现在图片中。我知道今天我看到有很多人遇到 WDA 服务器和 xcode 的问题。特别是新版本,以及 WebDriverAgent 现在如何被 facebook 存档。
我们不能只创建一个可以充当始终运行的 WebDriverServer 的应用程序,并且将使用与今天相同的逻辑......通过启动会话,按 Id 查找元素,单击它们,然后继续。这也将消除在您的计算机上运行 Appium 的需要,并依靠它将您的命令代理到带有 iOS 的 WDA 服务器。
我知道 android 是一个简单得多的画面,我目前更专注于如何使用 iOS 解决这个问题。
如果有人对 Appium、iOS 自动化、android 自动化或其他可以提出的观点有任何建议,我将不胜感激,请给我您的反馈。
我们确实使用真实设备运行自动化!
【问题讨论】:
-
我们是程序员,所以一切皆有可能。我建议为此创建一个操作系统。苹果太严格了。
标签: ios xcode selenium automation appium