我有一个 C++ (VS 2013) 控制台应用程序,我想测试它(使用 Google Test)。
我创建了一个单独的项目并添加了 gtest include 路径等(例如使用本教程 http://www.bogotobogo.com/cplusplus/google_unit_test_gtest.php),像这样的简单测试工作正常:
TEST(MyTests, myTest1)
{
EXPECT_EQ(2+2, 4);
}
但是如何使用主项目中的类呢?如果我简单地添加项目目录以包含路径,那么我可以使用“仅 header ”代码,但对于在 .cpp
中实现的类,我会收到 unresolved external symbol
错误。
除了将所有类移动到一个库中以便能够对其进行测试之外,还有什么更好的方法吗?
最佳答案
将您的项目设为库。并使启动时几乎没有可执行文件。这解决了很多问题。有很多项目使用这种策略。其中之一是 Chromium。另一个例子是 Perl 语言解释器。您的项目库将很容易链接到测试。
关于c++ - VC++ VS 2013,如何使用(测试)来自另一个项目的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35509187/