我正在尝试进行比较两个 vector 的有效 googletest 测试。为此,我使用 google mock 及其 matchers但我得到一个 C3861 错误,说“找不到 ContainerEq 标识符”,还有 C2512 说“testing::AssertionResult 没有合适的默认构造函数可用”。为什么?
TEST(MyTestSuite, MyTest)
{
std::vector<int> test1;
std::vector<int> test2;
...
EXPECT_THAT(test1, ContainerEq(test2));
}
最佳答案
您只是缺少 gtest 的 testing
命名空间限定符:
EXPECT_THAT(test1, ::testing::ContainerEq(test2));
关于c++ - 将容器与 GoogleTest 进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12340470/