結論
OpenCoverがアーカイブモードに入ってしまった。後継として推されていたAltCoverでも、OpenCoverと同じように行単位のC1が取れそう。
手順
QuickStart Guideに記載の通り、テストケースの格納されているプロジェクト中でdotnet add package AltCover
する。ソリューションファイルに対してdotnet.exe sln .\XUnit.AltCover.sln add package AltCover
のようにはできないので注意。
そのうえで、add package AltCover
したプロジェクトに対してテストケースを以下のように実行する。/p:AltCoverLocalSource=true
を忘れず指定すること。指定しないと、Xunitがぜんぶカバレッジの取得対象になってしまい、カバレッジを保存するcoverage.xml
が2MBくらいになってしまう。
dotnet test /p:AltCover=true /p:AltCoverPathFilter="?\.vb" /p:AltCoverLocalSource=true .\XUnit.AltCover.sln
ReportGeneratorで以下のようにレポートを出力すれば、HTML形式のレポートが得られる。
reportgenerator.exe -reports:.\XUnit.AltCover.MSBuild\coverage.xml -targetdir:.\XUnit.AltCover.MSBuild\AltCover
コードおよび結果
テストクラスの内容はCoverletのときに使ったものと同じ。得られたXMLのレポートファイルは以下。
AltCover VB.NET coverage result · GitHub
評価
結果、VB.NETのプログラムのカバレージも取得できた。カバレッジの内容はOpenCoverと同じになった。