是否可以仅运行Boost单元测试模块的子集?

Dev*_*lar 3 boost unit-testing

我正在使用Boost 1.34.1单元测试框架。(我知道该版本很旧,但是由于技术原因,目前不可以选择更新或切换框架。)

我有一个#define BOOST_TEST_MODULE UnitTests包含三个测试套件(BOOST_AUTO_TEST_SUITE( Suite1 );)的测试模块(),而测试套件又由几个BOOST_AUTO_TEST_CASE()s 组成。

我的问题:

是否可以仅运行测试模块的一个子集,即将测试运行限制为仅一个测试套件,甚至仅一个测试用例?

推理:

我将单元测试集成到我们的automake框架中,从而使整个模块都在上运行make check。我不想将其拆分为多个模块,因为我们的应用程序会生成大量输出,并且很高兴看到底部的测试摘要(“ X个Y测试失败”)而不是分散在几千行输出中。

但是完整的测试运行也很耗时,并且您正在寻找的测试输出同样被淹没;因此,如果我能以某种方式限制正在运行的测试的范围,那将是很好的。

Boost文档使我非常困惑,没有一个人明智。周围有人可能有建议吗?(一些欺骗手段允许拆分测试模块,同时仍然收到可用的测试摘要,这也将受到欢迎。)

Ala*_*lan 5

看一看--run_test参数-它应该提供您所追求的。

  • 如果使用测试夹具,这似乎不起作用。在这种情况下,如何指定特定的测试? (2认同)