Swift Xcode 9.4.1';防护罩';陈述

Swift Xcode 9.4.1';防护罩';陈述,swift,xcode,unit-testing,code-coverage,Swift,Xcode,Unit Testing,Code Coverage,在Xcode 9.4.1中的Swift 4项目中实现单元测试后,在获得100%的代码覆盖率方面遇到了一些问题 出于某种原因,当我在一个失败的初始值设定项中有一个guard语句时,我的代码覆盖率似乎总是对它说0,即使我对它进行了测试 如何让Xcode显示此代码包含单元测试 我对整个单元测试方面还比较陌生,所以如果您有任何建议,或者其他地方可以参考阅读,我将不胜感激 提前谢谢 /Dan它不能完全回答这个问题,但是如果您用struct替换class(从引用空间迁移到值空间),您将达到100%的测试

在Xcode 9.4.1中的Swift 4项目中实现单元测试后,在获得100%的代码覆盖率方面遇到了一些问题

出于某种原因,当我在一个失败的初始值设定项中有一个
guard
语句时,我的代码覆盖率似乎总是对它说
0
,即使我对它进行了测试

如何让Xcode显示此代码包含单元测试

我对整个单元测试方面还比较陌生,所以如果您有任何建议,或者其他地方可以参考阅读,我将不胜感激

提前谢谢


/Dan

它不能完全回答这个问题,但是如果您用
struct
替换
class
(从引用空间迁移到值空间),您将达到100%的测试覆盖率


奇怪

你在用空字典测试吗?换句话说,您是否正在测试guard语句执行并返回nil的否定情况?能否显示代码覆盖率屏幕?首先,您应该去掉所有隐式展开的选项。不要发布屏幕截图,发布你的实际代码。@Guven即使有一本空字典,我也会得到同样的结果issue@LeoDabus你能进一步解释一下“去掉隐式未包装的选项”吗?关于代码的发布,有一个GitLab链接指向一个示例项目,该项目显示了这个问题。