Google Test:在同一测试用例中进行测试的可变参数数量

时间:2017-10-13 13:04:08

标签: c++11 googletest

我刚刚开始研究使用Google Test作为测试框架的代码库(我不熟悉)。参数化测试在我认为通常的方式中或多或少地被广泛使用:

class TestCaseName: public ::testing::TestWithParam<Params> {
    // fairly complex setup
}
TEST_P(TestCaseName, TestName) {...}
INSTANTIATE_TEST_CASE_P(UniqueName, TestCaseName, CombinedInput);

问题是通常测试需要一些特定的额外输入。

可以使用TestCaseName的不同值创建不同版本的Params,但这会复制相当数量的代码。

否则,可以将单个参数添加到Params,对应于自定义AdditionalInput类,其中包含所有可能的附加输入的字段。根据需要扩展TestCaseName,设置可以是专门的。

有没有更好的方法来解决这个问题?

0 个答案:

没有答案