当 运行 命名测试时使用 "disabled" 提升测试输出垃圾邮件

Boost Test output spamming with "disabled" when running named test

我正在运行按名称进行提升测试test/suite,使用:

./MyTestExe --run_test=my_test

不幸的是我得到了数百个:

"Test case "bla" is skipped because disabled"

但我没有禁用它,我只是选择不运行它。

有没有办法删除所有这些消息?但是,如果可能的话,我想保留它们以备我 运行 所有内容和测试实际上被禁用时使用?

如果能提供一份副本就好了。

所以我做了最简单的:

#define BOOST_TEST_MODULE test module name
#include <boost/test/included/unit_test.hpp>

BOOST_AUTO_TEST_SUITE(Suite)
    
    BOOST_AUTO_TEST_CASE(A) {
        BOOST_TEST_MESSAGE("Yo A");
        BOOST_TEST(1 == 3);
    }

    BOOST_AUTO_TEST_CASE(B) {
        BOOST_TEST_MESSAGE("Yo B");
        BOOST_TEST(1 == 1);
    }

    BOOST_AUTO_TEST_CASE(C) {
        BOOST_TEST_MESSAGE("Yo C");
        BOOST_TEST(3 == 3);
    }

BOOST_AUTO_TEST_SUITE_END()

打印 Live On Coliru

现在 运行 只测试用例 C: ./a.out -t Suite/C: Live On Coliru

为了真正看到您提到的信息性消息,您必须提出要求:

a.out -t Suite/C -l all Live On Coliru

选项是:

  log_level
    Specifies the logging level of the test execution.
    --log_level=<all|success|test_suite|unit_scope|message|warning|error|cpp_exception|system_error|fatal_error|nothing>
    -l <all|success|test_suite|unit_scope|message|warning|error|cpp_exception|system_error|fatal_error|nothing>

事实证明,您至少需要 unit_scopetest_suite 才能看到它。如果您只想查看自己的信息,请使用 -l messageLive On Coliru

结论:

不要启用详细日志记录。

注意 有可能在某处隐式地进行了日志配置。例如。在自定义 运行ner 入口点或从配置文件中读取。此外,如果这是在某种 CI 服务器上,请检查您的 build/CI 脚本。