【问题标题】:iOS Simulator access test resourcesiOS Simulator 访问测试资源
【发布时间】:2012-10-05 14:32:28
【问题描述】:

我目前正在为我的应用实施一些简单的单元测试。

一个简单的测试用例是用一个预定义的文件实例化一个 AVAudioPlayer。该测试在设备上完美运行。但是,如果我使用模拟器测试应用程序,显然使用了其他文件夹结构,因为测试资源没有复制到 tmp 文件夹。

这是手机上使用的路径:

soundPath = [[NSString alloc] initWithFormat:@"%@Tests.octest/%@", NSTemporaryDirectory(), fileName];

如果我在模拟器上,我已经实现了一个简单的检查:

 if (TARGET_IPHONE_SIMULATOR)
        soundPath = @"";
    else
      ...

如果我在模拟器上,我应该使用哪条路径? (我知道我可以使用硬编码的资源路径,但是这个项目将在不同的计算机上运行,​​所以我不能把它放在那里..)

感谢您的帮助...

【问题讨论】:

    标签: objective-c cocoa-touch unit-testing ios-simulator


    【解决方案1】:

    你使用了错误的方法。

    您可以使用以下方式获取捆绑路径:

    NSBundle *bundle = [NSBundle bundleForClass:[self class]];
    soundPath = [bundle bundlePath];
    

    这将返回整个路径(包括 Tests.octest)

    HTH 马蒂亚斯

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-21
      • 1970-01-01
      • 2011-07-14
      • 2012-03-04
      • 1970-01-01
      • 1970-01-01
      • 2012-06-18
      • 1970-01-01
      相关资源
      最近更新 更多