Testing 当使用cocoapods资源包并在不同的包中进行测试时,如何加载资源

Testing 当使用cocoapods资源包并在不同的包中进行测试时,如何加载资源,testing,core-data,cocoapods,Testing,Core Data,Cocoapods,我正在使用cocoapods管理我正在处理的一个私人图书馆。目前,我的所有模型都有一个子集,包括用于核心数据建模的.xcdatamodel文件。我的podspec文件如下所示 s.subspec 'Data' do |ds| ... ds.resource_bundle = { :DataKit => '/Data/Schema/App.xcdatamodeld' } ... end 当我需

我正在使用cocoapods管理我正在处理的一个私人图书馆。目前,我的所有模型都有一个子集,包括用于核心数据建模的.xcdatamodel文件。我的podspec文件如下所示

  s.subspec 'Data' do |ds|
            ...
            ds.resource_bundle   = { :DataKit => '/Data/Schema/App.xcdatamodeld' }
            ...
        end 
当我需要访问.xcdatamodel时,请查找我的数据工具包包

比如说

    NSURL *url                               = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/DataKit.bundle",[[NSBundle mainBundle] resourcePath]]];
    NSBundle *dataBundle                     = [NSBundle bundleWithURL:url];
    NSManagedObjectModel *managedObjectModel = [NSManagedObjectModel mergedModelFromBundles:@[dataBundle]];

我遇到的问题是,我需要在数据子集中测试一些代码,因此,当我运行测试时,没有数据包包。我不想根据im测试与否添加加载捆绑包的条件代码。有什么好的解决方案吗?

不清楚为什么数据没有用于测试,或者这是否是您的意图。如果这是你的意图,你就不能依赖于这个子类来进行测试吗?我一定错过了什么。如果不需要实际数据,可以像测试viewmodel一样使用假/模拟数据源对象测试转换/处理代码。