3

如何在真实设备上安装 XCUITest runner 应用程序和 ipa 并获得结果?

我有一个 runner.app 是通过构建它进行测试而生成的,以及一个已部署/签名的 .ipa。

现在我想要将它安装在真实设备上,执行它并获取设备日志。

4

3 回答 3

2

您可以使用 bundleId :

let app = XCUIApplication(bundleIdentifier: "yourapp.bundle.id")
于 2019-09-20T09:07:14.367 回答
1

您可以尝试使用:

xcodebuild test-without-building -xctestrun somepath/YourAppName_iphoneos14.4-arm64.xctestrun -destination 'platform=iOS, id=some_id' 

我将YourAppName_iphoneos14.4-arm64.xctestrun, YourAppName.app, 从常规构建文件夹移至YourAppNameUITests-Runner.app某个本地文件夹。Library/Developer/etc..然后我打开*.xctestrun文件,这是一个xml文件,并手动修改了本地文件夹的路径。

我找不到任何有关它的官方信息,但似乎该*.xctestrun文件被用于xcodebuild查找所有相关的人工制品,即两个应用程序文件夹。我猜这就是他们如何在各种云上仅使用应用程序或 ipa 运行测试而无需源代码...

PS。问题是关于IPA的,但它可以转换为应用程序,对吗?至少有一个线程 -如何将 .ipa 转换为 .app 文件?

于 2021-10-07T16:18:28.193 回答
0

已编辑答案...

有可能实现这一点为了构建 UI 测试应用程序包的 ipa,您可以按照以下步骤操作:

  1. 打开包含在 Xcode 中的项目。
  2. 在方案旁边选择您要为其构建 ipa 的设备。这可以是实际设备或模拟器。
  3. 产品 > 构建 > 测试
  4. 在派生数据中找到[your_ui_test_bundle_name].app文件。

    • 默认情况下,派生数据位于~/Library/Developer/Xcode/DerivedData/
    • 要找到此文件,请进入项目的 DerivedData,导航到Build > Products,然后根据您在步骤 2 中选择的内容导航到相应的目录。如果您选择了模拟器,请查看-iphonesimulator/或者如果您选择了设备,请查看-iphoneos/ . UI 测试包.app文件应位于该目录中。
  5. 创建一个名为Payload casesensitive的目录,它必须命名为 this。

  6. .app文件移动到Payload目录中。
  7. 压缩Payload目录。
  8. 将压缩目录重命名为具有 .ipa 的文件扩展名。系统将提示您并选择Keep .ipa

现在您已将 UI 测试包应用程序保存为 ipa。您还可以通过以下过程在 Xcode 中手动将此 ipa 上传到设备(奖励信息,耶!)

  1. 窗口>设备和模拟器
  2. 选择您连接的设备。
  3. 点击Installed Apps下的+按钮。
  4. 导航并选择您之前压缩的 UI 测试.ipa文件。
  5. 它应该安装到设备上。

应得的信用:https ://medium.com/ios-os-x-development/how-to-run-your-iphone-test-on-aws-device-farm-98f18086811e

于 2017-12-14T02:42:27.627 回答