【发布时间】:2018-06-19 08:32:22
【问题描述】:
我最近开始为我的项目编写测试。在编写了一些测试后,我在覆盖率部分意识到我的一些类或函数的 覆盖率 超过 50%(如 AppDelegate中的 didFinishLaunchingWithOptions func >)没有,我为他们写了任何测试。 这个覆盖范围是从哪里来的?
【问题讨论】:
标签: ios swift unit-testing xctest
我最近开始为我的项目编写测试。在编写了一些测试后,我在覆盖率部分意识到我的一些类或函数的 覆盖率 超过 50%(如 AppDelegate中的 didFinishLaunchingWithOptions func >)没有,我为他们写了任何测试。 这个覆盖范围是从哪里来的?
【问题讨论】:
标签: ios swift unit-testing xctest
当测试运行时,它们正在启动您的应用。这意味着他们正在使用您的 UIApplicationDelegate 实现和 didFinishLaunchingWithOptions 运行,包括从中调用的所有方法。
如果方法运行,则计算其覆盖率。如果没有分支,则覆盖率为 100%。
相关:Unit Testing in Xcode, does it run the app? 基本上,您可以在测试时注入一个空的应用程序委托来避免这种行为。
【讨论】: