我只是注意到,即使在新的新项目上,Qt单元测试也会在“应用程序输出” Pane 中以不同的颜色两次写入所有内容,首先是洋红色,然后是黑色。我认为这是因为它同时写入stdout和stderr。

这是在Qt 4.8上发生在上,而不是在Qt 5.2.2上发生在上。在Qt 5.2.2中,仅应打印黑色文本。

例如,对于仅包含此测试的单元测试项目:

void Untitled15Test::testCase1()
{
    QVERIFY2(false, "Failure");
}

输出是这样的(我使用屏幕截图,所以显示了颜色):

有没有办法关闭此行为?这是Qt4中的错误吗?

最佳答案

在Qt Bug Tracker网站上进行搜索后,我发现它确实是一个bug。我找到了bug report mentioning it:



我认为发生这种情况是因为QTestLib使用了CONFIG += console,同时关闭了“在终端中运行”复选框,从而触发了该错误。

10-05 20:13