Googletest不会运行测试夹具

cls*_*udt 3 c++ testing unit-testing googletest

我正在尝试使用googletest在C++中进行单元测试.我在以下位置定义了一个文本夹具ClusteringTest.h:

#include <gtest/gtest.h>

namespace EnsembleClustering {

class ClusteringTest: public ::testing::Test {

    ClusteringTest() {};

    virtual ~ClusteringTest() {};

    virtual void SetUp() {

    };

    virtual void TearDown() {

    };

};

TEST_F(ClusteringTest, doesGTestWork) {
    EXPECT_EQ(42, 42);
}


} /* namespace EnsembleClustering */
Run Code Online (Sandbox Code Playgroud)

在我的主要功能中,我打电话给:

 ::testing::InitGoogleTest(&argc, argv);
 return RUN_ALL_TESTS();
Run Code Online (Sandbox Code Playgroud)

结果是:

running EnsembleClustering
[==========] Running 0 tests from 0 test cases.
[==========] 0 tests from 0 test cases ran. (1 ms total)
[  PASSED  ] 0 tests.
Run Code Online (Sandbox Code Playgroud)

为什么我的测试没有运行?

Pet*_*ood 6

您需要将头部ClusteringTest.h包含在某个地方的.cpp文件中以使其具体化,并创建一个编译单元.