我正在使用 UIAutomation 来测试一个应用程序,我想知道我的代码覆盖率。但是由于 javascript 没有预处理器,这意味着 gcov 和类似的不是一个选项。有没有人为此提出解决方案?
最佳答案
对于 Xcode 4.5 及更新版本:
这将在您每次在模拟器中运行应用程序并退出应用程序时生成代码覆盖率文件。这两个步骤的详细解释可以在http://qualitycoding.org/xcode-code-coverage/的开头找到。 .
对于任何单元测试,每次您点击测试按钮并完成测试时,都会生成代码覆盖率文件。对于 UIAutomation,它有点棘手。您必须确保应用程序在测试结束时退出。我发现最简单的方法是关闭多任务处理。在您的 MyAppName-Info.plist 文件中添加 UIApplicationExitsOnSuspend 并将此选项设置为"is"。运行您的 UI 自动化测试,最后您可以通过手动按下模拟器中的主页按钮或使用 UIATarget.localTarget().deactivateAppForDuration() 方法退出应用程序。
注意:如果您的应用程序有任何依赖于 deactivateAppForDuration() 方法的 UI 自动化测试,则测试将在运行该命令时终止。
关于ios - 有什么方法可以测试 UIAutomation 测试的代码覆盖率吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15013854/