Vis*_*ddi 3 c++ unit-testing cppunit
运行 CppUnit 测试时,xml 或文本文件的输出中有点。
freopen("UnitTest-Results.xml", "a", stdout);
CppUnit::TextUi::TestRunner runner;
runner.addTest(pSuite);
// Change the default outputter to a Text Outputter.
runner.setOutputter(new CppUnit::XmlOutputter(&runner.result(), std::cout));
Run Code Online (Sandbox Code Playgroud)
输出是:
.........................
OK (25 tests)
Run Code Online (Sandbox Code Playgroud)
如何选择不在输出文件中打印点?
谢谢
根据您调用 run 的方式,您可以指定正确的参数以跳过输出。
方法签名是:
bool TextTestRunner::run( std::string testName,
bool doWait,
bool doPrintResult,
bool doPrintProgress )
Run Code Online (Sandbox Code Playgroud)
与doPrintResult = false和doPrintProgress = false您可以禁止所有输出。
另一种方法是使用 TestRunner 或您自己的子类。这也不是那么困难,它只取决于您的测试结构,哪个更容易实现。
PS 只是为了让它更清楚一点,ui::text::TestRunner只是TextTestRunner. 旧的访问方式TextUi::TestRunner已被弃用,TextTestRunner应直接使用。