13

lcov大约一个月前开始使用。覆盖计数似乎不一致。第一次运行报告的线路覆盖率约为 75%,而第二次运行报告的线路覆盖率仅为 19%。两次运行都使用了一些测试套件。我在lcov --remove. 有什么建议么?

lcov:警告:在跟踪文件 all.info 中发现负数

这有什么好担心的吗?

4

2 回答 2

1

GitHub 上报告了相同的已知问题。

-1将输出中的所有计数替换为0(例如用sed -i -e 's/,-1$/,0/g' <outputfile>)会导致警告从lcovandgenhtml输出中消失,同时仍会生成正确的覆盖率报告。

更重要的是(至少对我而言),提交文件并将计数设置为0而不是-1导致codecov.io结果被正确解析并且覆盖信息可通过codecov.io.

Codecov也处理这种值错误:

# Fix negative counts
$count = $2 < 0 ? 0 : $2;
if ($2 < 0)
{
  $negative = 1;
}

遵循其他一些修复:

于 2019-03-17T16:49:10.820 回答
0

请参阅此错误报告:https ://github.com/psycofdj/coverxygen/issues/6

用 0 替换输出中的所有 -1 计数(例如,使用 sed -i -e 's/,-1$/,0/g' )会导致警告从 lcov 和 genhtml 输出中消失,同时仍然产生正确的覆盖率报告。

更重要的是(至少对我而言),将计数设置为 0 而不是 -1 的文件提交给 codecov.io 会导致结果被正确解析,并且覆盖信息可通过 codecov.io 获得。

于 2019-03-18T13:16:14.527 回答