使用夹具时增强单元测试过滤器

时间:2017-10-16 15:58:12

标签: c++ boost boost-unit-test-framework

我需要指定要运行的特定单元测试。当然,在我查看文档之后,我查看了Stack Overflow Answers,但是没有使用过fixture。

如果我有以下内容,如何指定要运行的测试用例:

BOOST_AUTO_TEST_SUITE(mysuite)

struct Fixture
{
    Fixture()
    {
        BOOST_TEST_MESSAGE("Setup");
    }

    ~Fixture()
    {
        BOOST_TEST_MESSAGE("Teardown");
    }
};

BOOST_FIXTURE_TEST_CASE(add_remove, Fixture)
{
}

BOOST_AUTO_TEST_SUITE_END()

如果我通过--run_test=add_remove,则该过程返回一条消息测试设置错误:没有匹配过滤器的测试用例或所有测试用例都被禁用。

我看过: http://www.boost.org/doc/libs/1_64_0/libs/test/doc/html/boost_test/runtime_config/test_unit_filtering.html

Is it possible to run only subsets of a Boost unit test module?

How to set which Boost unit test to run

1 个答案:

答案 0 :(得分:1)

当您使用测试用例的路径作为--run_test的参数时,它还必须包含套件的名称。在您的情况下,通过--run_test=mysuite/add_remove。这在documentation中有所描述(请参阅该部分的表格)。

Live demo