如何使用CppUnitTestFramework在Visual Studio本地c++单元测试中获得$(ProjectD
How to get the $(ProjectDir) path in a Visual Studio native C++ Unit Testing using CppUnitTestFramework?
我需要能够检索我的单元测试的项目目录路径,以便加载测试所需的一些文件。我不想硬编码它,以防将来解决方案结构和绝对路径发生变化。
好的,我是这样做的:
-
在我的项目属性->配置-> C/c++ ->预处理器我添加了这个预处理器定义
UNITTESTPRJ="$(ProjectDir)."
-
然后在我的cpp文件中我做了:
#define STRINGIFY(x) #x
#define EXPAND(x) STRINGIFY(x)
string s = EXPAND(UNITTESTPRJ);
s.erase(0, 1); // erase the first quote
s.erase(s.size() - 2); // erase the last quote and the dot
string my_project_dir = s;
结尾的愚蠢的.
是必要的,以逃避项目目录中尾随的"
。
相关文章:
- 有什么好的方法可以让系统调用代理允许在单元测试中进行模拟
- 在子目录中使用target_sources()命令时用于单元测试(qtest)的项目结构
- VC++本机单元测试,找不到调试符号
- 用于交叉编译和CMake的预处理器宏的单元测试
- C++ 用于单元测试的模板模板
- 提升 1.64 单元测试编译失败
- 单元测试欧拉到四元数实现失败
- 运行 C++ 单元测试时LNK2005链接错误
- 禁用自动捕获 Googletest 单元测试中的C++异常
- 有没有办法在不使用 #ifdef 的情况下不编译发布版本中的单元测试函数体?
- 使用 Google Test 对自定义断言函数进行单元测试
- 如何将我的 CMake 项目配置为运行所有单元测试?
- 在Qt C++单元测试中动态加载QQuickWindow而不是QQuickWidget
- MS 本机单元测试 - 断言::线程失败不起作用
- 如何获取 CMake 单元测试的相对路径?
- QTimer 超时不会在单元测试中触发
- 如何在提升构建中设置环境变量以进行提升单元测试框架?
- 在 AtMega32a 上运行的C++的单元测试
- 使用 gtest 框架在单元测试代码中检查目标对象的私有变量的最佳实践是什么?
- 如何使用CppUnitTestFramework在Visual Studio本地c++单元测试中获得$(ProjectD