12

ソースファイルのいくつかの行を無視するようにlcovに指示する可能性があるかどうか疑問に思っています. それらを未訪問として報告しないでください。次のように、コード自体に配置できるソリューションを探しています。

int some_method(char some_var, char some_other_var)
{
    if(some_var == 'A')
    {
         if(some_other_var == 'B')
         {
               /* do some real stuff here */
         }
         else
         {
                LCOV_DO_NOT_REPORT_NEXT_LINE // **<-- this?? **
                NOT_IMPLEMENTED("A*")
         }
    }
    else
    {
         NOT_IMPLEMENTED("*")
    }

そして必要な背景:

上記のような大きなコードは、一連の単体テストでテストされていますが、このコードはまだ開発中であるためNOT_IMPLEMENTED("A*")、行番号/ファイル名を含むメッセージを画面に表示して終了するマクロがたくさんあります。応用。実装されていないブランチのテストはありません。明らかに、機能が実装されたときに記述されます。

ただし、lcov はこれらのNOT_IMPLEMENTED行を報告し、カバレッジ レポートでは非常に見栄えが悪くなります (つまり、赤い線の割合が高くなります)。

私が求めることは可能ですか、それとも私たちはこれと一緒に暮らすべきですか?

4

1 に答える 1