実行したテスト ケースが実行したブランチの条件を取得しようとしています。たとえば、これは Gcov から取得したカバレッジ情報の抜粋です(読みやすくするためにオプションgcov -b
も使用しています)。-i
lcount:10,1
branch:10,nottaken
branch:10,taken
いくつかのサンプルを調べたところ、すべてのブランチ情報で常に true 条件が最初に記述されているようです。これは、実行されたテスト ケースが分岐の true 部分または false 部分のどちらを取るかを判断できることを意味します。この場合、テスト ケースは 10 行目の分岐の偽の部分を取りました。
ここで、Gcovr によって生成された xml--branches
と--xml
、同じプログラムおよびテスト ケースの抜粋を次に示します。
<line branch="true" condition-coverage="50% (1/2)" hits="1" number="10">
<conditions>
<condition coverage="50%" number="0" type="jump"/>
</conditions>
</line>
ここでは、ブランチのどの部分が取られたのかわかりません。
Gcovr で使用できるオプションはありますか?