使用GoogleTest比较容器

时间:2012-09-09 15:42:04

标签: c++ googletest googlemock

我正在尝试进行比较两个向量的googletest测试。为此,我使用谷歌模拟与其matchers,但我得到一个C3861错误说“找不到ContainerEq标识符”和C2512说“测试:: AssertionResult没有正确的默认构造函数可用”。为什么呢?

TEST(MyTestSuite, MyTest)
{
    std::vector<int> test1;
    std::vector<int> test2;

    ...

    EXPECT_THAT(test1, ContainerEq(test2));
}

1 个答案:

答案 0 :(得分:18)

你只是缺少gtest的testing命名空间限定符:

EXPECT_THAT(test1, ::testing::ContainerEq(test2));