使用boost::filesystem添加头文件后,不再发现来自google测试的单元测试
Unit test from google test no longer found after adding header with boost::filesystem
我有一个使用谷歌测试框架的unittest项目,我的测试工作正常。然而,现在我添加了boost::filesystem
头像#include <boost/filesytem.hpp>
,之后我的项目链接和编译很好,但是没有发现任何测试,当我运行测试它给我-
Process finished with exit code -1073741515 (0xC0000135)
Empty test suite.
如果我有这样的代码:
#include <gtest/gtest.h>
TEST(Test, Test1){
ASSERT_FALSE(true);
}
它工作得很好,找到失败的测试用例,但如果我添加boost头像这样:
#include <gtest/gtest.h>
#include <boost/filesystem.hpp>
TEST(Test, Test1){
ASSERT_FALSE(true);
}
之后什么也没找到。我使用基于cmake/clion/cygwin
的env。
错误码指示
// // MessageId: STATUS_DLL_NOT_FOUND // // MessageText: // // The program can't start because %hs is missing from your computer. // Try reinstalling the program to fix this problem. // #define STATUS_DLL_NOT_FOUND ((NTSTATUS)0xC0000135L) // winnt
(参见启动。net应用程序时错误码0xc0000135意味着什么?)
我猜您使用了带有动态库的Google test来包含测试。由于您添加了Boost Filesystem,它现在将与Boost System和Boost Filesystem dll链接。
但是,测试运行器不能加载这些依赖项(导致所示的错误)。要么在系统范围内安装boost DLL,将它们复制到测试运行程序目标的输出目录(或启动测试运行程序的任何地方),要么使用清单文件指示DLL位置。UPDATE正如评论者补充的那样,当然不链接到dll也会使问题消失
相关文章:
- 如何使用Google Mock来模拟gettimeofday()
- 在Google Kick start中提交时出错
- CHECK(调用)函数在Google Colab中出错
- 我提出什么条件才能再加5%的折扣
- 我需要分发哪些版本的可再分发文件
- Google protobuf 时间戳未声明标识符,在 Windows 上具有C++
- 等待整个 omp 块完成,然后再调用第二个函数
- 如何使用 Google Test 向测试添加元数据 / 如何将数据从 Google Test 发送到 TestEven
- QWidget::p aintEngine:不应再在 QTreeWidget 派生类中调用
- 在macOS Mojave上发布BOOST unit_test_framework/Google测试
- Google Test for OpenCv c++
- 使用 Google Test 对自定义断言函数进行单元测试
- Google Cloud Pubsub Async Streaming API in C++
- 如何在Google Cloud Functions上运行C++文件?
- 在jupyter notebook和google colab中使用.so
- gmock / google-mock发出警告,并且通过模拟异常未通过测试
- Google Or-Tools Glop:如何创建指向 const 对象的指针数组?
- 使用boost::filesystem添加头文件后,不再发现来自google测试的单元测试
- Google Mock:在程序出口处发现泄漏的模拟对象
- 为什么Google Mocks发现这个函数调用不明确