0

lcovを使用して実行しているいくつかのテストケースのコードカバレッジを取得しようとしています。

しかし、私が実行すると

lcov --directory $PWD --capture --output-file lcov.output

警告が表示されます

geninfo:警告:.bbファイルでtest.c.gcovのエントリが見つかりません。ファイルをスキップします!

test.cで直接gcovを実行すると、使用率を正常に示すgcov出力を生成できます。

コードカバレッジは初めてです。これを修正するための助けをいただければ幸いです。

4

1 に答える 1

1

ある時点でgcov形式に変更がありました。基本的に問題は、gcovの現在のバージョンがソースファイル名などのヘッダーを生成するためです。Lcovはこのヘッダーを予期し、エラーが表示されたこの失敗を抽出しようとしました。

回避策として、返されたヘッダーが空の場合、ソースファイル名がgcovファイル名から直接想定されるようにLCOVコードを変更しました。gcovファイルがソースファイル名とは異なる名前で作成されている場合、互換性がなくなる可能性があるため、このソリューションは最も洗練されていない可能性があります

更新:この特定の問題は、lcov-1.8のバグが原因でした。lcov-1.10のバージョンでは、これが修正されているはずです。(http://ltp.cvs.sourceforge.net/viewvc/ltp/utils/analysis/lcov/bin/geninfo?r1=1.106&r2=1.107

于 2012-09-12T11:51:22.007 に答える