1

测试设置:通过 USB 连接的 Windows PC 和 iOS 设备。在设备内部有一个 MyAppUITests 应用程序,它包含所有基于 XCTest 的 UI 测试,这些测试需要在此设备上测试一些与 UI 相关的东西。问题是:如何运行这个应用程序才能真正执行测试并收集调试控制台输出?

我知道有一个libimobiledevice库允许我这样做:

idevicedebug -u [udid] -e [some_env_variables] run [bundle_id]

但据我了解,此工具不会启动特殊的 UI 测试运行程序(如本 WWDC 视频中所述),它会执行所有自动化 UI 测试并生成调试输出。

我知道 Xcode 可以通过 GUI 或通过xcodebuild这样的实用程序来做到这一点:

xcodebuild -project myapp.xcodeproj -scheme "MyAppUITests" \
           -destination 'platform=iOS,name=MyTestDevice' test

Xcode 知道如何运行能够正确运行我的 UI 测试的测试管理器守护程序的魔术。

有没有办法使用libimobiledevice或 Windows 平台上可用的任何其他 3rd 方工具通过 UI 测试运行我的 UI 测试应用程序?

4

1 回答 1

0

libimobiledevice 没有实现在非 Windows 机器上启动 Xcode UI 测试所需的 API。

Windows 上有 3rd 方工具,可以在 Windows 和 Linux 上运行 Xcode UI 测试。它们中的大多数(如果不是全部)旨在执行 Facebook WebDriverAgent,并不真正支持任意 Xcode UI 测试,尽管它们可能不是很难支持任意 Xcode UI 测试。

我工作的公司 Quamotion 提供了这样的工具。您可以在http://quamotion.mobi下载我们的软件并申请试用许可证。

如果您仍然对此感兴趣,请随时回复,我们会尽力完成这项工作。

于 2017-11-09T17:11:07.083 回答