任何人都可以解释一下为什么当我这样声明变量时:
private let viewModel = TermsAndConditionViewModel()
// TermsAndConditionViewModel
class TermsAndConditionViewModel {
private let permissionsModel: PermissionsModel
private let userSession: UserSessionManager
init(
permissionsModel: PermissionsModel = PermissionsModelImpl(),
userSession: UserSessionManager = UserSessionManager.shared
) {
self.permissionsModel = permissionsModel
self.userSession = userSession
}
}
更新:没有有关警告的消息。 这是当我签入Xcode / Coverage
感谢您的帮助。
答案 0 :(得分:1)
@user2629744您好,欢迎来到StackOverflow。
您在右侧装订线中看到的红色条形不是警告,而是Xcode's Code Coverage Annotation。
红色,它显示一个0
,因为没有测试执行该代码路径。
很难确定是否无法访问您的代码库,但是由于我们在您的示例中谈论的是视图模型,因此我猜这行代码来自视图层。对吧?
如果是这种情况,那么不进行测试就可以了。如果所有业务逻辑都存在于视图模型中(您可以对其进行全面测试),并且保留了视图层humble,那么您仍将覆盖大部分行为。