4

我想使用 Google Test / Mock 为我的 DLL 中的代码编写单元测试。测试代码应该被编译到我的 DLL 中。

我在 Google Test Primer 中读到这是可能的,但是 gtest 必须编译成 DLL(我猜 gmock 也是如此)。

是否有人编译并使用该框架作为 DLL,并且可以告诉我最重要的项目设置(我使用 VS2010)以及如何使用生成的 DLL 来运行测试?

4

2 回答 2

3

GoogleTest 和 GoogleMock 不需要编译成.dll

而是说它们需要使用与Runtime Library使用(链接)它们(/MD/MT)的项目相同的设置进行编译。 运行时库设置

一致性是关键!链接任何库(LIB 或 DLL)时,它们应具有与Runtime Library项目相同的设置(反之亦然)。

运行时库选项

我还建议使用相同的Character Set设置。

于 2013-03-20T16:31:52.593 回答
1

设置预处理器标志 (properties->c/c++->Preprocessor->Preprocessor Definitions) GTEST_CREATE_SHARED_LIBRARY 将 Gmock 构建为 dll,并使用 GTEST_LINKED_AS_SHARED_LIBRARY 构建消耗 gmock 的 dll

于 2015-01-23T16:23:19.747 回答