ios – 如何从Swift单元测试中访问测试目标中存在的Objective-C代码?

我正在尝试对我编写的一些
Swift类进行单元测试.它们需要访问仅存在于我的测试目标中的Objective-C类.

我可以通过在测试目标“Objective-C Bridging Header”构建设置中指定app的桥接头来访问属于我的app目标的Objective-C类.但是,我不能使用它来在我的测试目标中公开Objective-C类.

如何从Swift测试类中访问仅存在于我的测试目标中的Objective-C类?

最佳答案 我添加了第二个桥接头文件,这个属于我的测试目标.在第二个标题中,我从我的应用程序中导入了一个,以及我在测试中需要的Objective-C代码.

称之为“MyAppTests-BridgingHeader.h”:

#import "MyApp-Bridging-Header.h"
#import "MagicalRecord.h"
#import "MagicalRecord+Setup.h"

然后我将其设置为测试目标构建设置中的桥接头:

《ios – 如何从Swift单元测试中访问测试目标中存在的Objective-C代码?》

我的测试现在可以访问我的主桥接头中暴露给Swift的所有Objective-C类,以及仅在测试中公开的所有额外Objective-C类.

点赞