无法使用XCode从命令行目标读取plist文件
Unable to read plist files from a command line target using XCode
我正在制作一款iOS手机游戏,使用cocos2d-x 3.10和Mac上的cocos studio。
我使用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);
当我构建针对移动或桌面目标的代码时,它工作得很好,但是当我更改到我创建的"命令行"目标时,使用Catch进行测试,然后找不到plist文件。
我已经将plist文件添加到目标成员中,并且它们出现在Build Phases的"Copy Bundle Resources"部分…
我发现命令行应用程序不支持bundle模型。我在这里找到了:https://developer.apple.com/library/content/documentation/CoreFoundation/Conceptual/CFBundles/AboutBundles/AboutBundles.html
现在我正在使用XCTest (XCode的默认单元测试框架)编写我所有的测试用例。
相关文章:
- 理解boost::asio-async_read在无需读取内容时的行为
- 使用新行和不使用新行读取文件
- 读取文件并输入到矢量中
- 如何(从固定列表中)选择一个数字序列,该序列将与目标数字相加
- 用c++从输入文件中读取另一行
- 读取文件的最后一行并输入到链接列表时出错
- 在进程中对同一管道进行读取和写入时C++管道出现问题
- 无法找到/读取配置文件.conf-FileIOException
- 如何使用Luacneneneba API正确读取字符串和表参数
- C++将文本文件中的数据读取到结构数组中
- 正在将csv文件读取为双精度矢量
- 为什么 sscanf 无法从一个字符串中读取uint64_t和字符?
- C++A*算法并不总是在路径中具有目标节点
- 为什么在读取文件大小时文件IO速度会发生变化
- 正在读取二进制文件(is_open)
- 如何在c++中从文本文件中逐行读取整数
- 读取目标数组中带有"gaps"的文件
- 可以读取目标文件
- 如何从目标中读取参数
- 无法使用XCode从命令行目标读取plist文件