无主机 XCTest 目标能否收集代码覆盖率数据?

Can a hostless XCTest target gather code coverage data?

我在 Xcode 8.2 中有一个 iOS 应用程序。它有一个测试目标/方案,在方案的测试/信息设置中选中了“收集覆盖数据”。不收集覆盖率数据。我看到一行像往常一样在装订线中迭代了多少次,但是报告导航器的测试 运行s 根本没有指示任何覆盖率。

我想知道这是否是因为我已将测试设置为 运行 无主机,即不需要实际启动我的应用程序 – 它们是纯逻辑测试。

这可能吗?

是的,无主机 XCTest 目标应该收集代码覆盖率数据。

'iOS Unit Testing'(又名 XCTest)包,它测试动态框架或其他不需要应用程序环境存在的东西到 运行,应该愉快地收集代码覆盖率数据并显示它在 Xcode。即使是 Host Application 也设置为 None。这适用于 运行ning Xcode > Product > Test on the Scheme for the framework or on the Scheme for the unit tests themselves (if the test bundle is listed in the Test pane of the Scheme编辑器)。

您的问题一定出在其他地方,抱歉。我很难猜到问题出在哪里,建议您尝试重新创建一个项目,看看是否可以重现问题。