无法使用XCode从命令行目标读取plist文件

时间:2016-09-21 13:17:39

标签: c++ ios xcode macos cocos2d-x

我正在使用cocos2d-x 3.10和Mac上的cocos studio开发iOS手机游戏。

我使用Catch作为单元测试框架。为了使用Catch,我已经为原始XCode项目添加了一个新目标。在这个目标中,我创建了我的" testXXX.cpp"包含我想要运行的单元测试代码的文件。

我在我的一次单元测试中遇到了一些麻烦。我试图测试一种方法。在这个方法中,我使用cocos2d FileUtils来访问两个配置游戏中某些行为的.plist文件。以下是我使用的代码:

std::string fullPathLevels = cocos2d::FileUtils::getInstance()->fullPathForFilename(OIR_CONFIG_LEVELS);
std::string fullPathRhythmTable = cocos2d::FileUtils::getInstance()->fullPathForFilename(OIR_CONFIG_RHYTHMS);

this->Levels = cocos2d::FileUtils::getInstance()->getValueMapFromFile(fullPathLevels);
this->rhythmTable = cocos2d::FileUtils::getInstance()->getValueMapFromFile(fullPathRhythmTable);

当我构建针对移动或桌面目标的代码时,它工作正常但是当我更改为"命令行时#34;我创建的目标是使用Catch进行测试,然后找不到plist文件。

我已经将plist文件添加到目标成员资格中,它们出现在" Copy Bundle Resources"构建阶段......

1 个答案:

答案 0 :(得分:0)

我发现命令行应用程序不支持捆绑模型。我在这里找到了它:https://developer.apple.com/library/content/documentation/CoreFoundation/Conceptual/CFBundles/AboutBundles/AboutBundles.html

现在我使用XCTest(XCode的默认单元测试框架)编写所有测试用例。