問題タブ [opencover]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - OpenCover から生成されたコード カバレッジ メトリックを取得して Jenkins に戻す方法はありますか?
Jenkins
CI サーバーとして使用する .NET プロジェクトに取り組んでいます。サーバーは想定どおりに動作していますが、コードカバレッジが低い場合にアラートを発行しようとしています。
私が試みているアプローチは、andSonar
を実行するために使用することですが、コード カバレッジメトリックを からにリンクする必要があり、そこに問題があります。NUnit
OpenCover
Sonar
Jenkins
OpenCover
私の知る限り、 (coverage-report.xml )から生成されたレポートはそのままでは認識されないため、( coverage-report.xml)を(emmaJenkins
)に変換するxslファイルでそれらを話させることです-report.xml ) には、理解できるプラグインがあります。Jenkins
私はそれを知りませんが、それが最善のアプローチです。より良いアプローチは大歓迎です ;)block coverage
OpenCover からメトリックを取得する際に問題に直面しています (Emma
このメトリックが必要です)。
class, %
必要な他のすべての指標method, %
をline, %
からOpenCover
に変換できましたが、レポートからEmma
を取得できるかどうかはわかりません。block, %
それが可能かどうか、または私がやろうとしていることを達成するためのより良いアプローチがあるかどうか (つまり、Jenkins
コードカバレッジが特定の割合を下回ったときにビルドアラートを発行するようにする) があるかどうか、誰かに教えてもらえますか?
前もって感謝します!:)
c# - OpenCoverレポートからクラスを除外する方法
MSTestスイートのOpenCoverを使用してカバレッジレポートを生成する(そしてReportGeneratorを使用してHTMLレポートを生成する)際に、フレームワークで生成されたクラスを除外しようとしています。特に、サービス参照によってプロジェクトの名前空間の下で生成されたクラス。
XMLファイルを生成するために使用しているコマンドは次のようになります。
私もファイルで除外しようとしました:
ただし、サービス参照クラスは引き続きXMLファイルに表示されます。
Visual Studioによって生成された特定のクラスのみを除外する方法はありますか?
.net - OpenCover/NUnit が PDB ファイルを見つけられない
私は OpenCover http://nuget.org/packages/opencoverを使用しており、単体テストを実行してコード カバレッジ統計を生成するために次のバッチ ファイルを作成しました。
ただし、バッチ ファイルを実行すると、次のエラーが表示されます。
私はばかげたことをした/明らかな何かを見逃していることは確かですが、何がわからないのですか!
PDB ファイルは次のフォルダーにあります: "..\Web.UnitTests\bin\Debug\"
どんな助けにも感謝します、
ありがとう、
.net - OpenCoverがNUnitに引数を渡していない
NugetからNUnit、NUnit Runners、およびOpenCoverを取得しました。NUnitパーツは、GUIモードとコンソールモードの両方で正常に動作しています。しかし、PowerShellでは、OpenCoverを正しく機能させることができないようです。さまざまな使用例に従って、次のコマンドを実行しました。
NUnitからの最初の著作権情報が表示されますが、NUnitから次のように通知されます。
致命的なエラー:入力が指定されていません
もちろん、フラグなどを説明する標準のヘルプ出力が続きます。次に、当然、OpenCoverは、フィルターに一致するものがなく、結果がないことを示すエラーも表示します。
そこで、NUnitを直接実行してみました。
そして、それはうまく動作します。テストに合格し、すべてが幸せです。ドキュメントと例が古くなっている可能性があると考えてtargetargs
、呼び出しに直接組み合わせてみました。
ただし、エラー出力は同じです。
OpenCoverの適切な使用法に何かが欠けていますか?NUnitコンソールランナーと適切に対話するにはどうすればよいですか?
c# - ガリオとオープンカバーを備えたソナー、コードカバレッジ:0%
私は自分のc#プロジェクトをチェックするためにソナーを使用しています。コードカバレッジを測定したいので、gallioとopencoverをインストールしました。soner-runnerを実行すると、すべてが正常に機能し、単体テストが実行されますが、ソナーWeb UIのコードカバレッジは0%です。
コードカバレッジが0%である理由を知っていますか?
私のソリューション、プロジェクト、クラス:(S)SonarTestSolution(P)ClassLibrary1(C)Class1.cs(P)ClassLibrary1NUnitTest(C)Class1NUnitTest.cs
Class1.csの内容:
Class1NUnitTest.csの内容:
sonar-project.properties:
必要に応じて、log og sonar-runnerと、生成されたcoverage-report.xmlおよびgallio-report.xmlファイルを含めることができます。
nunit - OpenCover からの WaitHandles 例外
NUnit テストのコード カバレッジをレポートするために OpenCover を使用していますが、長時間かかる一連のテストを実行すると、次の例外が発生します。
これは、テストでモック DAL を実際の DAL に置き換えた場合にのみ発生します。基本的に、モック実装ではなく統合実装を使用して、同じインターフェイスに対して同じ一連のテストを実行しています。モック DAL テストは正常に実行され、XML ファイルを使用する別の DAL 実装は正常に実行されます (予想どおり遅くなります)。3 つの中で最も遅い実際の SQL 実装 (各テスト間のティアダウン/セットアップのために遅い) は、このエラーを引き起こします。
スレッド化とカスタム コードの WaitHandles に関するオンラインの情報は不足していませんが、これはサード パーティのツール内で発生しています。これを修正するために OpenCover でできることはありますか? これらの長期実行テストを許可するようにスレッドに明示的に指示するコマンドライン引数はありますか? おそらく、NUnit に渡す必要がある引数でしょうか?
code-coverage - 複数の除外フィルターを OpenCover に追加する
除外フィルターを 1 つ追加する方法は知っていますが、複数のプロジェクトをまとめて除外するにはどうすればよいですか? 「-」ステートメントを繰り返しますか? それともコンマ区切りですか?特に、テストとインストーラーをカバレッジ計算から除外しようとしています。
申し訳ありませんが、OpenCover の初心者:)
前もって感謝します!
jenkins - OpenCoverカバレッジレポートファイルでGallioを使用すると結果が含まれますが、ソナーは0%を報告します
何らかの理由でコード カバレッジが Sonar に表示されないという問題があります。単体テストの結果は正しく実行され、表示されますが、コード カバレッジの結果は表示されません。プロジェクトはジェンキンスによって構築されています。一部のスレッドで提案されているように opencover.profiler.dll ファイルを登録しましたが、それでも結果が得られません。ビルドの実行時に Jenkins でエラー メッセージが表示されることもありません。
何をすべきかについてのヒントをいただければ幸いです。
よろしくダン
c# - オープンカバーの取り付け
Win XP システムで Opencover を使用しようとしています (C# パッケージ テスト カバレッジ用)。Opencover.profiler.dll を regsvr32.exe に手動で登録しようとすると、奇妙なエラーが発生します。エラー レベル 9009 で「ライブラリ ("dll 名") の読み込みに失敗しました」というエラーが表示されます (dll を登録しようとした後、echo %ERRORLEVEL% を実行しました)
Google 検索によると、このエラー コードは xcopy と関係があることが示唆されています。しかし、dll の登録中にこれが発生する理由がわかりません。
これを行うには、register:user スイッチがあることを知っています。しかし、登録が失敗した理由を知るために上記の方法を試しました。
上記のエラーが発生する Opencover のバージョンは 2.0.802 です。同じシステムで、問題なく 4.0.804 dll を登録できます。バージョン 2.0.802 dll は、私の他の XP システムで動作します。
これで何が問題になるのか分かりますか?それが Opencover ではなく Windows 向けのものであることを願っています
code-coverage - opencover のテストクラスのみをカバー
opencover を使用してクラスからカバレッジを取得するのに問題があります。
メイン クラスを含む Viewer.dll と、ビューアのテストを含む Viewer_Test.dll があります。
コマンドを実行すると、すべてのテストが期待どおりに実行されます。
生成されたレポートを見ると、メイン クラスではなく、テスト クラスのみがリストされています。
opencover コマンドのコンソール出力を次に示します。
Viewer.dll もカバーするように opencover を作成するにはどうすればよいですか?