我可能在这里编译地狱.
我正在Swift中实现一个Snapshot测试,在Objective-C VC上调用一个属性,但是该属性是一个用Swift编写的类,桥接.
在MyViewController.h中:
@class TextEntryView; @interface MyViewController: AbstractTextEntryViewController @property (nonatomic,strong) TextEntryView *textEntryView; @end
在TextEntryView.swift中:
@objc(TextEntryView)类TextEntryView:UIView
在我的测试中,我正试图打电话
vc.textEntryView其中vc是MyViewController类型,我收到错误:
value of type
MyViewController
has no membertextEntryView
我的桥接头很好看.如果我将NSString属性添加到上面的.h文件中,我可以在测试中引用它.此外,当我在测试中命令单击MyViewController时,它会将我带到.h文件而不是该文件的.swift生成版本(这似乎是此问题的症状).
我可能会将Xcode 8推向极限.
解决方法
您需要确保在源文件的顶部导入应用程序以进行测试.例如,如果您的应用程序名为MyApp,请插入测试文件的顶部:
import MyApp
如果我省略了导入,我会得到你所看到的相同行为.此外,只要导入到那里,您就不必为单元测试而烦恼.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。