在 UI 测试/单元测试期间将自定义字符串写入日志

Posted

技术标签:

【中文标题】在 UI 测试/单元测试期间将自定义字符串写入日志【英文标题】:Write custom strings to logs during UI testing / unit testing 【发布时间】:2018-05-18 04:17:43 【问题描述】:

有没有办法在测试日志中添加文本?​​

在 Xcode 9 中运行 UI 和/或单元测试时,NSLog 和 Swift.print 似乎都不会将任何剩余文本记录到我可以看到的任何日志中。我正在设备上运行。

无论我做什么,我都没有在报告导航器中看到任何 NSLog/打印内容,单击测试。我尝试扩展所有内容...

【问题讨论】:

Xcode 7 相关***.com/questions/33159648/… 【参考方案1】:

您应该能够在测试运行的原始日志中看到打印语句,但是如果您正在查看显示测试步骤的漂亮 GUI 日志,那么您需要使用 XCTContext.runActivity 来“记录”事物并且能够在那里看到 (https://developer.apple.com/documentation/xctest/xctcontext/2923506-runactivity)。如果这不是您要查找的内容,您可以添加包含您感兴趣的测试数据的附件 (https://developer.apple.com/documentation/xctest/activities_and_attachments/adding_attachments_to_tests_and_activities),并在测试运行后使用它们。

【讨论】:

附件看起来很有希望。下周试试。一旦测试结束,打印语句就会消失。 通过原始日志,您是否正在检查为测试会话创建的.log 文件?您可以在 Xcode 9.3 中找到它,方法是转到 Test Navigator,点击 Log,选择 All Messages 选项卡,展开“Writing dianostic log”步骤,然后打开日志文件。我在测试中为设置/拆卸步骤做了很多打印语句,它们显示在这里。

以上是关于在 UI 测试/单元测试期间将自定义字符串写入日志的主要内容,如果未能解决你的问题,请参考以下文章

想要在 Xcode 中的 UI 测试期间在测试运行后停止调试控制台清除

在 XCode 中的 UI 测试期间无法访问自定义视图

将自定义颜色添加到 w2ui 单元格 [网格]

在单元测试静态库(不是应用程序)时编写日志文件?

在 Android 上进行单元测试期间的语言环境

Python:如何在单元(鼻子)测试期间忽略装饰器?