cppcheck将xml写入输出文件,并将“可理解”的结果写入控制台

使用cppcheck(1.86-r0),以下命令将结果打印到xml文件中。但是,控制台输出完全保持为空。

cppcheck --quiet --error-exitcode=1 --xml --xml-version=2 --output-file=CPPCheckReport.xml --inline-suppr --enable=warning ./src

另外指定模板(向上述命令添加--template=vs无效),此处输出文件优先。

我如何存储xml(以后我convert into JUnit)并在控制台中输出有意义的消息(我需要更好地理解我的CI作业)?

qzrobinh 回答:cppcheck将xml写入输出文件,并将“可理解”的结果写入控制台

我不相信cppcheck会这样做,但是您可以通过处理XML输出文件来获取有意义的消息。例如,如下所示:

cppcheck --all-your-options-from-above
grep -E '<location ' CPPCheckReport.xml | sed 's/^ *//'

上面的grep提取所有发现错误的位置线,而sed仅删除前导空格。也许其他处理可能有用,具体取决于您认为“有意义的消息”的原因。

上面的示例运行cppcheck,然后处理输出文件。如果cppcheck较慢,则您可能希望将cppcheck的输出发送到stderr而不是输出文件,使用tee将其发送到输出文件,然后将输出直接通过管道传递到{ {1}}。这样,您就可以看到产生的错误。

本文链接:https://www.f2er.com/3137489.html

大家都在问