我有一个与 Cocoapods (ECSlidingViewController) 一起安装的库。在代码中,比较是使用 -isKindOfClass 完成的。在调试器中,打印描述和一切都表明这个变量是一个 ECSlidingViewController。但是,当代码运行时,它返回 NO。
目前我有我的 podfile 将库与主要目标和测试目标链接起来。如果我不这样做,测试目标就找不到库。
最佳答案
这个答案帮我解决了https://stackoverflow.com/a/27165120/2777364 .
简而言之,您不应该将 pod 与您的测试目标链接起来,您应该为测试目标创建与至少一个其他 pod 的单独链接,以强制生成配置集。
target 'MainTarget' do
pod 'PodYouTryToTest'
end
target 'Tests' do
pod 'AtLeastOneOtherPod'
end
上面的答案是解决这个问题的“正确方法”。作为一种快速解决方法,我可以提出一种方法:
Class getBundleDependentClass(Class class) {
return NSClassFromString(NSStringFromClass(class));
}
关于ios - Cocoapods 库在单元测试期间未正确返回 isKindOfClass,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20862949/