当前位置:  开发笔记 > 编程语言 > 正文

使用CppUnit参数化测试

如何解决《使用CppUnit参数化测试》经验,为你挑选了1个好方法。

我的组织正在使用CppUnit,我正在尝试使用不同的参数运行相同的测试.在测试中运行循环不是一个好选择,因为任何失败都会中止测试.我已经看过TestDecoratorTestCaller但也似乎真的适合.代码示例会很有帮助.



1> Matt Dillard..:

在CppUnit中似乎不可能直接参数化测试用例(参见此处和此处).但是,您有几个选择:

用一个 RepeatedTest

您可以巧妙地使用内置RepeatedTest装饰器.这允许测试用例多次运行(尽管没有参数化).

我承认自己从来没有使用过这个,但也许你可以让RepeatedTest驱动器有一些看门人功能,这会(使用类静态变量,也许?)每次运行都会选择不同的输入.它会依次调用您想要使用该值作为输入进行测试的真实函数.

使用TestCase子类

CppUnit的SourceForge页面上的一个人声称编写了一个子类TestCase,它将以任意次数运行特定测试,尽管方式与RepeatedTest类提供的方式略有不同.可悲的是,海报简单地描述了创建类的动机,但没有提供源代码.但是,有人要求与个人联系以获取更多详情.

使用简单的辅助函数

最直接(但最不自动化)的方法是创建一个辅助函数,将您想要传递的参数传递给您的"真实"函数,然后有很多单独的测试用例.每个测试用例都会使用不同的值调用辅助函数.


如果您选择上面列出的前两个选项中的任何一个,我会有兴趣了解您的体验.

推荐阅读
linjiabin43
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有