5

私は partcover を使用して、一連の mstest を使用した単体テストのコードカバレッジを生成しています。

コマンドラインを使用します:

PartCover.exe --target "c:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\MSTest.exe" --target-args "/testcontainer:c:\CrusieControlProjects\AcademyPro\AcademyTests\bin\Release\AcademyTests.dll" --include [AcademyPro*]*

これが実行され、すべてのテストに合格しますが、出力は次のようになります。

Results file:      C:\Program Files\Gubka Bob\PartCover .NET 2.3\TestResults\Administrator_PSLV22 2009-03-31 17_54_18.trx
Run Configuration: Default Run Configuration
Target PageFaultCount: 10565
Target PagefileUsage: 27631616
Target PeakPagefileUsage: 31297536
Target PeakWorkingSetSize: 31498240
Target QuotaNonPagedPoolUsage: 8180
Target QuotaPagedPoolUsage: 217124
Target QuotaPeakNonPagedPoolUsage: 13012
Target QuotaPeakPagedPoolUsage: 255524
Target WorkingSetSize: 30310400
request target shutdown
<PartCoverReport date="2009-03-31T18:00:36.7676250+01:00" />

--output コマンドを使用して実行すると、xml ファイルは次のようになります。

<PartCoverReport date="2009-03-31T18:00:36.7676250+01:00" />

なぜこれが起こっているのでしょうか?

4

2 に答える 2

4

x64 の NUnit で同様の問題が発生していました。問題は、nunit-console.exe (AnyCPU) を使用していたことです。nunit-console-x86.exe (明示的に 32 ビット) に切り替えると、問題が解決しました。

MSTest のある環境にアクセスすることはできませんが、参照している実行可能ファイルが AnyCPU である場合は、システム上でその明示的な 32 ビット バージョンを探すことができます。最悪の場合、CorFlags を使用して作成できます。

于 2009-10-05T19:28:55.013 に答える
4

これを修正するために、ダウングレードしました。

バージョン 2.3 (開発ビルド) を使用していましたが、バージョン 2.2 に切り替えました。

これでテストは正常に実行され、適切なカバレッジ データが得られます。

多分それは誰かを助けるでしょう。

于 2009-03-31T20:21:09.890 に答える