【发布时间】:2016-08-24 03:14:24
【问题描述】:
目前我的 C++ 项目有一堆单元测试,但我还没有(还)测试代码覆盖率。我正在使用-O3 优化标志编译测试以暴露潜在的细微错误,但似乎如果我想使用gcov 之类的工具收集覆盖信息,则必须禁用任何优化标志。我是否应该构建两次测试(一次使用-O3,另一次没有)?这个问题一般是怎么处理的?
【问题讨论】:
-
How is this problem usually dealt with?我正在用-O0编译测试。使用 Valgrind(或 gcc 的一些sanitize标志)之类的分析器更适合查找潜在的错误。-O3适用于性能基准测试。 -
@Gluttton 是的,我正在使用 Valgrind 运行我的测试。
-O0和没有优化标志一样吗?因为它是默认选项。 -
Is -O0 just the same as no optimization flags?是的。
标签: c++ unit-testing code-coverage