【发布时间】:2018-07-30 15:00:42
【问题描述】:
在 Xcode 9.4.1 的 Swift 4 项目中实现单元测试后,在获得 100% 的代码覆盖率时遇到了一些麻烦。
由于某种原因,当我在一个可失败的初始化程序中有一个 guard 语句时,我的代码覆盖率似乎总是为它显示 0,即使我确实对其进行了测试。 p>
I've created a demo project so you can see for yourselves.
如何让 Xcode 显示此代码包含单元测试?
我对整个单元测试方面还比较陌生,所以如果您有任何建议可以提供,或者有任何其他地方可以查看以了解它,我将不胜感激。
提前致谢。
/丹
【问题讨论】:
-
您是否使用空字典进行测试?换句话说,你是在测试 guard 语句执行并返回 nil 的否定情况吗?
-
你能显示你的代码覆盖率屏幕吗?
-
首先你应该摆脱所有隐式展开的选项。不要发布屏幕截图发布您的实际代码。
-
@Guven 即使是空字典我也会遇到同样的问题
-
@LeoDabus 你能进一步解释一下“摆脱隐式展开的选项”吗?关于代码的发布,有一个指向显示问题的示例项目的 GitLab 链接。
标签: swift xcode unit-testing code-coverage