有人知道Xcode 11 UI测试的测试结果如何吗?

Ker*_*ins 5 xcode-ui-testing xcode11

我曾经能够访问.xcresults包中的“派生数据”中的结果。.xcresults包仍然存在,但是以前曾经有一个名为“ TestSummaries.plist”的文件以及包含附件的子目录(例如屏幕快照文件等),现在有一个名为“ Data”的子目录,其中包含二进制格式的文件。因此,现在我不再能够以编程方式提取屏幕快照文件,也无法将测试结果上传到qTest或ALM等数据库。

我已经确认Xcode 10仍以旧格式输出结果。我已经在计算机上搜索“ TestSummaries.plist”文件或类似的工件,以为它们可能位于其他位置。到目前为止没有运气。

Nob*_*osi 9

Apple 从 Xcode 11 开始更改了 xcresult 的格式。现在为了从中取出项目,您必须通过 Xcode 的 xcresulttool ( xcrun xcresulttool),但这可能非常麻烦,因为您必须在新的树结构只是为了获取您的附件(如果您有大量测试,它可能是 xcresulttool 中的数百个命令)。

我的工作场所开源了一个名为 xcparse 的工具,它允许您从新格式 ( https://github.com/ChargePoint/xcparse )导出屏幕截图。您可以安装 Homebrew:brew install chargepoint/xcparse/xcparse 它通过自动执行 xcresulttool 调用和解析来简化您必须执行的过程。

  • @BrunoBieri Apple 工程师可以访问基本上运行越狱的设备(请参阅 https://tidbits.com/2020/08/04/understanding-how-apple-security-research-devices-likely-work-and-stay-secure/ )。因此,他们并没有真正使用 xcresult 的屏幕截图功能来获取 App Store 屏幕截图,因为他们可以直接从设备抓取屏幕截图并运行内部工具来修改状态栏和其他属性。绝对同意 Apple 应该让这一切变得更容易,并且是 xcresulttool 本身的一部分;和我一起向他们提交反馈助理票! (2认同)

Rob*_*Rob 1

转至 \xe2\x80\x9cReport Navigator\xe2\x80\x9d,右键单击相关测试,然后在 Finder\xe2\x80\x9d 中选择 \xe2\x80\x9cShow:

\n\n

在此输入图像描述

\n\n

在 Finder 中,您\xe2\x80\x99 将看到类似 的条目Test-MyApp-2019.10.14_13-12-40--0700.xcresult,每个测试运行对应一个条目。

\n\n

在 Finder 中,您还可以右键单击并选择 \xe2\x80\x9cShow Package Contents\xe2\x80\x9d 以查看各个文件。顺便说一句,这个 \xe2\x80\x9cReport Navigator\xe2\x80\x9d 还提供了一个很好的 GUI,可以在不浏览文件的情况下仔细阅读测试结果。

\n

  • 谢谢,但这并没有让我得到我想要的东西。我知道 .xcresult 文件以及如何打开它。(顺便说一下,在 Xcode 11 中,您现在可以双击 .xcresult 文件打开,而无需使用“显示包内容”)。然而,我的目标是以编程方式读取结果文件,该文件曾经是一个名为“TestSummaries.plist”的文件。该文件不再存在于结果中,并且附件子目录现在也消失了。如果有人知道如何打开二进制文件(名称如 data.0~-TzUFRo-...== 的文件),我很乐意接受教育。 (5认同)