Иго*_*чев 2 c++ googletest c++17
我想为笛卡尔积添加一些特殊的值。像这样的东西:
INSTANTIATE_TEST_SUITE_P(Test, Test,
testing::Values(
testing::Combine(
testing::Values(1, 2, 3),
testing::Values("one", "two", "three")),
testing::Values(std::make_tuple(12345, "big value"))));
Run Code Online (Sandbox Code Playgroud)
但这不起作用。还有其他工作方法可以做到吗?
您可以进行两个实例化:
INSTANTIATE_TEST_SUITE_P(TestSanity, Test,
testing::Combine(
testing::Values(1, 2, 3),
testing::Values("one", "two", "three")));
INSTANTIATE_TEST_SUITE_P(TestSpecial, Test,
testing::Values(std::make_tuple(12345, "big value")));
Run Code Online (Sandbox Code Playgroud)
只Combine()接受其他生成器作为输入,但这是不可取的。但是,通过使用两个单独的宏调用,从测试中生成两个测试套件,可以轻松解决该问题。网上看到的。