在googletest或cppunit下移动参数化测试

时间:2013-06-27 11:45:42

标签: c++ unit-testing googletest cppunit

在我们的C ++项目中,我们使用分离的可执行文件作为单元测试。我们以下列方式使用它们:

test1 -p333 -u512 -t3 -c10000 -m100000000
test1 -p444 -u256 -t1 -c50000 -m20000000
test2 -c555 -v -d2 -t2
test2 -c111 -v -d8 -t4
test3 ...

即。我们一次又一次地运行具有不同参数的可执行文件,收集日志并进行分析。目前我们不使用任何测试框架。有时我们会更改参数,但很少。

然而,我们将把我们的测试转移到Googletest(或CppUnit,我们尚未决定),我不知道如何修改测试以与gtest一起使用。例如,我可以将test1和test2移动到测试夹具,但我不知道如何使用不同的参数运行它(不更改代码和重新编译)。

有没有办法在Googletest或Cppunit下移动我们的参数化测试?

2 个答案:

答案 0 :(得分:3)

Google Test支持值参数化测试。它的wiki是described。 wiki示例仅解释了对简单参数类型的支持,但您可以将多值参数打包到结构或元组中。

答案 1 :(得分:1)

使用Google测试,您可以创建自己的mainlike describe here,然后就可以管理您的参数。