コードを介して実行されているテストにもかかわらず、0%のカバレッジを示すReSharperドットカバー

ベン・トムソン

これは私の側のエラーだと思いますが、ReSharper dotcoverが特定のクエリ(およびコマンドも)のテストカバレッジを0%として表示している理由がわかりません。

そのため、多くのEF CoreLINQで構成されている.NETCore CQRSAPIがあります。以下は、私のクエリのメインの実行メソッドの1つの簡単な例です(DIコンストラクターを省略しましたが、アイデアを理解していると確信しています)。

public bool Execute(SelectIsReportRequested query)
{
     var context = _clientDatabase.GetContext(query.DatabaseId);

     var result = (from a in context.Assessments
                   join r in context.Registrations on a.AssessmentId equals r.AssessmentId
                   where a.PublicId == query.ResponseId
                   select r.ReportRequested).SingleOrDefault();

     return result == 1;
}

次に、さまざまなビットをモックしてクエリを実行する次のテストがあります。

[TestMethod]
public void It_should_return_true_if_a_report_has_been_requested_for_the_givenassessment()
{
    const int assessmentId = 1;
    var responseId = Guid.NewGuid();
    var mockRepository = new Mock<ICViewClientContext>();

    var assessments = new List<Assessments>
    {
        new Assessments { AssessmentId = assessmentId, PublicId = responseId },
    };
     var registrations = new List<Registrations>
     {
        new Registrations { AssessmentId = assessmentId, ReportRequested = 1 },
     };

     mockRepository.Setup(x => x.Registrations).Returns(registrations.AsDbSetMock().Object);
     mockRepository.Setup(x => x.Assessments).Returns(assessments.AsDbSetMock().Object);

     var mockClientDatabase = new Mock<IClientDatabase>();
     mockClientDatabase.Setup(x => x.GetContext(1)).Returns(mockRepository.Object);

     var query = new Queries.Assessments.SelectIsReportRequested(2, responseId);
     var handler = new Queries.Assessments.SelectIsReportRequestedHandler(mockClientDatabase.Object);
     var result = handler.Execute(query);

     Assert.AreEqual(true, result);
 }

テストは合格します(また、LINQのロジックを壊すと失敗します)、またはコード内の他のロジック。

ただし、dotcoverを実行するとテストが実行され、合格しますが、いずれもカバーされていないと表示されます。

それが本当に私を狂わせて、私が完全に間違ったことをしたのではないかと心配しているので、私は理由を知りたいです!

ベン・トムソン

ですから、運が悪ければ自分の問題を解決できたと思います。他の人の役に立つ場合に備えて、自分がしたことを投稿したいと思いました。

ログを取得してJetBrainsに送信しようとしているときに、次のことを行いました。

  1. ReSharperで| オプション…| dotCover | 一般、無効 'プリロードされたユニットテストランナーを使用する'
  2. 保存された設定
  3. 戻って有効にした「プリロードされたユニットテストランナーを使用する」
  4. 保存された設定

次に、dotcoverを再実行すると、突然すべてのテストカバレッジが表示され、すべてのテストカバーコードの強調表示が正しく表示されました。

JetBrainsにメッセージを送り返しました。問題が解決した理由についての情報があれば、それも投稿します。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

100%カバレッジレポートにもかかわらずcoverage.pyで実行されなかったコードを見つける方法

分類Dev

他のテストですでに正しく実行されているにもかかわらず、セットアップにリストされているコードからエラーをスローする自動テスト

分類Dev

すべてのテストを実行せずにphpunitコードカバレッジのみを実行しますか?

分類Dev

パブリックS3バケットにアップロードされているにもかかわらず、ストレージがローカルURLを返すのはなぜですか?

分類Dev

VS2013のコードカバレッジは、実際のコードではなく、テストのカバレッジを示しています

分類Dev

Virtualbox: '現在のバージョンがインストールされているにもかかわらず、'現在のカーネルと一致するカーネル「ヘッダー」ファイルをインストールしてください '

分類Dev

PHPUnitで特定のテストスイートを実行するときに遅いテストの実行をスキップし、完全なコードカバレッジが必要なときにすべてのテストを実行するにはどうすればよいですか?

分類Dev

サーバーが実行されているにもかかわらず、phpサーバーがコードを実行していないようです

分類Dev

カーネルのアップグレード後もWi-Fiドライバー(カーネルオブジェクトとしてインストールされている)が実行されていることを確認するにはどうすればよいですか?

分類Dev

Pycharm / IntelliJは、カバレッジが生成されたにもかかわらず、pytestのカバレッジが0%であることを示しています

分類Dev

どうして?テストターゲットに追加されていないにもかかわらず、ユニットテストカバレッジに表示されているクラス

分類Dev

各条件付きパスがカバーされているのに、イスタンブール/タップコードカバレッジがswitchステートメントをカバーされていないとして報告するのはなぜですか?

分類Dev

Javaで実行されているかどうかにかかわらずTerracottaサーバーのステータスコードを取得する方法

分類Dev

コードカバレッジから単体テストを除外しようとしています

分類Dev

C ++によって実行されるシェルコマンドを介してPythonスクリプトを実行するためのオーバーヘッドコストはどれくらいですか?

分類Dev

コードが削除されたコミットを示すログにもかかわらず、リポジトリには元のコミットメッセージを含むコードが含まれていますか?

分類Dev

Azureレジストリで実行されているDockerコンテナのセロリからストレージアカウントにBLOBをアップロード中にエラーが発生しました

分類Dev

jacocoは、コードの実行中に行が実行されるにもかかわらず、行がカバーされていないものとして表示します

分類Dev

サイプレスカスタムコマンドに渡されたコールバックが終了するのを待ってからテストを続行するにはどうすればよいですか?

分類Dev

dotnet testによって生成されたVSカバレッジからCoberturaカバレッジレポートを公開する方法-「コードカバレッジ」を収集しますか?

分類Dev

React、Enzyme、Istanbul-テストによって実行されている関数が欠落しているコードカバレッジ

分類Dev

メールのセットアップがコードを介してIOSデバイスで行われているかどうかを確認します

分類Dev

Seleniumテスト実行のEmberコードカバレッジを生成する

分類Dev

drawColor()を使用しているにもかかわらず、カスタムキャンバスアーティファクトが表示されている

分類Dev

ispartaを使用してカルマのコードカバレッジからjqueryなどのサードパーティのインポートを除外するにはどうすればよいですか?

分類Dev

条件が満たされているにもかかわらず、Pythonifステートメントがコードをスキップする

分類Dev

ローカルコードに対して別のpipインストールパッケージからpy.testテストを実行する

分類Dev

コードカバレッジレポートに、ライブラリがカバーされていないと表示されるのはなぜですか?

分類Dev

nginx入力コントローラーのデフォルトのバックエンドを介して提供されるエラーページをカスタマイズするにはどうすればよいですか?

Related 関連記事

  1. 1

    100%カバレッジレポートにもかかわらずcoverage.pyで実行されなかったコードを見つける方法

  2. 2

    他のテストですでに正しく実行されているにもかかわらず、セットアップにリストされているコードからエラーをスローする自動テスト

  3. 3

    すべてのテストを実行せずにphpunitコードカバレッジのみを実行しますか?

  4. 4

    パブリックS3バケットにアップロードされているにもかかわらず、ストレージがローカルURLを返すのはなぜですか?

  5. 5

    VS2013のコードカバレッジは、実際のコードではなく、テストのカバレッジを示しています

  6. 6

    Virtualbox: '現在のバージョンがインストールされているにもかかわらず、'現在のカーネルと一致するカーネル「ヘッダー」ファイルをインストールしてください '

  7. 7

    PHPUnitで特定のテストスイートを実行するときに遅いテストの実行をスキップし、完全なコードカバレッジが必要なときにすべてのテストを実行するにはどうすればよいですか?

  8. 8

    サーバーが実行されているにもかかわらず、phpサーバーがコードを実行していないようです

  9. 9

    カーネルのアップグレード後もWi-Fiドライバー(カーネルオブジェクトとしてインストールされている)が実行されていることを確認するにはどうすればよいですか?

  10. 10

    Pycharm / IntelliJは、カバレッジが生成されたにもかかわらず、pytestのカバレッジが0%であることを示しています

  11. 11

    どうして?テストターゲットに追加されていないにもかかわらず、ユニットテストカバレッジに表示されているクラス

  12. 12

    各条件付きパスがカバーされているのに、イスタンブール/タップコードカバレッジがswitchステートメントをカバーされていないとして報告するのはなぜですか?

  13. 13

    Javaで実行されているかどうかにかかわらずTerracottaサーバーのステータスコードを取得する方法

  14. 14

    コードカバレッジから単体テストを除外しようとしています

  15. 15

    C ++によって実行されるシェルコマンドを介してPythonスクリプトを実行するためのオーバーヘッドコストはどれくらいですか?

  16. 16

    コードが削除されたコミットを示すログにもかかわらず、リポジトリには元のコミットメッセージを含むコードが含まれていますか?

  17. 17

    Azureレジストリで実行されているDockerコンテナのセロリからストレージアカウントにBLOBをアップロード中にエラーが発生しました

  18. 18

    jacocoは、コードの実行中に行が実行されるにもかかわらず、行がカバーされていないものとして表示します

  19. 19

    サイプレスカスタムコマンドに渡されたコールバックが終了するのを待ってからテストを続行するにはどうすればよいですか?

  20. 20

    dotnet testによって生成されたVSカバレッジからCoberturaカバレッジレポートを公開する方法-「コードカバレッジ」を収集しますか?

  21. 21

    React、Enzyme、Istanbul-テストによって実行されている関数が欠落しているコードカバレッジ

  22. 22

    メールのセットアップがコードを介してIOSデバイスで行われているかどうかを確認します

  23. 23

    Seleniumテスト実行のEmberコードカバレッジを生成する

  24. 24

    drawColor()を使用しているにもかかわらず、カスタムキャンバスアーティファクトが表示されている

  25. 25

    ispartaを使用してカルマのコードカバレッジからjqueryなどのサードパーティのインポートを除外するにはどうすればよいですか?

  26. 26

    条件が満たされているにもかかわらず、Pythonifステートメントがコードをスキップする

  27. 27

    ローカルコードに対して別のpipインストールパッケージからpy.testテストを実行する

  28. 28

    コードカバレッジレポートに、ライブラリがカバーされていないと表示されるのはなぜですか?

  29. 29

    nginx入力コントローラーのデフォルトのバックエンドを介して提供されるエラーページをカスタマイズするにはどうすればよいですか?

ホットタグ

アーカイブ