在哪里可以找到从命令行开始的 XCode UI 测试报告

Posted

技术标签:

【中文标题】在哪里可以找到从命令行开始的 XCode UI 测试报告【英文标题】:Where to find report for XCode UITests started from commandline 【发布时间】:2016-07-11 17:15:23 【问题描述】:

我正在寻找一种在从命令行启动的测试完成后打开报告的方法。

使用命令行开始测试:

xcodebuild -scheme "Application Test Schema" -sdk iphonesimulator -destination 'platform=ios Simulator,name=iPhone 6s Plus,OS=9.3' test

在测试结束时,我列出了失败的测试用例:

Test Suite 'AppUITests.xctest' failed at 2016-07-11 12:00:10.376.
     Executed 17 tests, with 1 failure (0 unexpected) in 389.167 (389.217) seconds
Test Suite 'Selected tests' failed at 2016-07-11 12:00:10.377.
     Executed 17 tests, with 1 failure (0 unexpected) in 389.167 (389.219) seconds
Failing tests:
    -[MainScreenTests test14_ClickOnButtonOpensKeyboard()]

我想弄清楚测试“test14_ClickOnButtonOpensKeyboard”、读取堆栈跟踪等发生了什么...我在哪里可以找到这次运行的报告?

我检查了 XCode Report Navigator 历史记录,它不包含上次从命令行启动的运行。

XCode 7.3.1 版

【问题讨论】:

***.com/questions/37283647/… 【参考方案1】:

日志保存在您的派生数据文件夹下

通常是~/Library/Developer/Xcode/DerivedData/<mangled app folder>/Logs/Test/。查看 xcodebuild 的日志以找出确切位置。

Test 文件夹下,您会找到一个包含整个测试序列的 plist。您应该将 Root > TestableSummaries > Tests > Item n > Subtests 键导航到 ActivitySummaries 键,该键将包含单个步骤,包括对包含在 Attachments 文件夹中的屏幕截图的引用。

如果您不关心存储在 plist 中的结构化信息而只需要原始文本日志,您还可以检查与 plist 同名的文件夹,其中包含每个测试会话的日志文件。

附:如果您想知道为什么每次测试后派生数据文件夹都会增长这么多,请查看Attachment 文件夹大小...

【讨论】:

太棒了,谢谢托马斯!我还发现了这篇文章,这可能对想要详细了解它的人有用:michele.io/test-logs-in-xcode

以上是关于在哪里可以找到从命令行开始的 XCode UI 测试报告的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 4 UI 可以很好地构建应用程序,但命令行 xcodebuild 在代码签名时失败

使用 swift 2.3 从 xcode 8 中的命令行运行 xcode ui 测试

Xcode 5.0.1 OS X 10.9 中的 RCS 在哪里

安装了 Xcode 命令行工具的 Mac OS X 中的 clang-format 和 clang-format.py 在哪里?

XCode TestPlan:从命令行指定要使用的配置

在 Xcode 编辑器中哪里可以找到行号?