問題タブ [karma-coverage]

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.

0 投票する
0 に答える
995 参照

javascript - Karma-coverage はブランチ カバレッジ 0/0 を示します

私の Karma カバレッジでは、ステートメント、関数、および行カバレッジの正しい値が表示されますが、ブランチ カバレッジでは常に 0/0 が表示されます。私はほぼ 23 の仕様ファイルを持っていますが、それらすべてで同じです。レポートのスクリーンショットを添付します。

これが私のカルマ構成ファイルです。

カルマ カバレッジ レポート

0 投票する
0 に答える
706 参照

javascript - タイプスクリプト + カルマ + webpack + コードカバレッジが機能しない

ステップバイステップの手順に従って、angular1 プロジェクトを angular2 に移行したいと考えています。したがって、typescript をプロジェクトに追加しました。しかし今、Karma、Webpack、および CodeCoverage で実行する際に問題が発生しています。単体テストはすべて緑色ですが、コード カバレッジのレポートには ".ts" ファイルが表示されません。

これを機能させるには、karma.config をどのように構成する必要がありますか? 私はすでに「karma-typescript」と「karma-remap-istanbul」を試しましたが、すべての依存関係の正しい設定を取得することに行き詰まっています。

ここに私のkarma.conf.jsがあります:

これは、すべてのリソースが個別にロードされる「karma.import.js」です。

0 投票する
3 に答える
80275 参照

angular - サービスのオブザーバブルを使用したエラー ケースのテスト

サービス関数をサブスクライブするコンポーネントがあるとします。

サブスクライブ呼び出しは、パラメーターとして 2 つの匿名関数を受け取ります。データ関数の作業単体テストを設定することができましたが、Karma はエラー 1 のカバレッジを受け入れません。

ここに画像の説明を入力

console.error 関数をスパイしようとしましたが、エラーをスローしてから、スパイが呼び出されたことを期待していますが、それはうまくいきません。

私の単体テスト:

これらのような匿名関数をテストするためのベスト プラクティスは何ですか? テスト カバレッジを確保するための最低限の要件は何ですか?

0 投票する
1 に答える
2449 参照

javascript - angular 2の単体テストでカバレッジの概要について質問していますか?

angular 2 でテストを実行すると、コンソール コマンドの [カバレッジの概要] セクションにいくつかのキーワードがStatements, Branches, Functions...として出力されます。

ここに画像の説明を入力

そして、私はそれが何であるか正確にはわかりませんか?

これを説明する助けがあれば、ありがとう。

0 投票する
3 に答える
792 参照

javascript - カルマを使用して Aurelia アプリでコード カバレッジの結果を取得するにはどうすればよいですか?

Aurelia CLI ( ) を使用して Aurelia アプリを作成し、au newコード カバレッジを設定したいと考えています (できればkarma-coverageを使用しますが、それが不可能な場合は何でも使用します)。

まず、タスクを a にnpm install karma-coverage --save-devコピーします( を実行できるようにします)。test.jscover.jsau cover

cover.js

これは…どこかに行きますか?

<code>au cover</code> のコンソール出力

しかし、テストが個々の src ファイルにリンクされているとは思いません (代わりに にリンクされていますapp-bundle.js)。

Aurelia アプリの src ファイル レベル (つまり、バンドル レベルではない) でコード カバレッジを取得する方法はありますか?

その他の関心のあるファイル

app.js

カルマ.conf.js

0 投票する
0 に答える
401 参照

unit-testing - Angular 2 単体テスト/Karma テスト ランナー: 「included: true」の karma-test-shim のみが報告されたカバレッジ

{included: true} ファイル (私の場合は karma-test-shim.js のみ) のテスト カバレッジ結果のみを取得します。SystemJs は karma-test-shim にテスト ファイルをロードすることになっているため、テスト ファイルを {included: true} にできません。テスト ファイルを {include: true} にしようとすると、「匿名のシステム レジスタ呼び出しは許可されていません」というエラーが発生します。私のテストは {included: false} で正常に実行されます。SystemJS を使用してテスト ファイルを karma-test-shim にロードし、テスト ファイル {included: false} を作成することは、angular2-quickstart リポジトリを含む Angular 2 github リポジトリが続く標準形式です。

私は tsconfig.json ファイルで "commonjs" の代わりに "system" をモジュール形式として使用し、Chrome の代わりに (karma-electron NPM パッケージを介して) Electron ブラウザーを使用し、1 行の Electron require shim in the karma- を使用します。karma .loaded 行の上にある test-shim ファイル- これらすべてを組み合わせることで、fs、パス、またはインストールされたモジュールなどのノード モジュールの "require" を、事前にバンドルせずにテストで機能させることができます。私のアプリケーションは、Electron と Angular 2 を使用したデスクトップ アプリケーションです。

これらの違いは別として、 https: //github.com/juliemr/ng2-test-seed とまったく同じテスト セットアップ (karma.conf.js および karma-test-shim.js) を使用しています。

これが私の基本的な karma.conf.js ファイルです。

0 投票する
0 に答える
696 参照

unit-testing - Angular-Cli、Webpack: lib フォルダーを含む Karma カバレッジの理由

最近、angular-cli beta 18 を使用するようになりました。ドキュメントに記載されている指示に従って、テストを実行するために変更を加えました。現在のところ、以下はディレクトリ構造です

angular-cli ドキュメントで提案されているように、test.ts を使用してすべてのテストを含めています。コンテキスト設定行は

これにより、テストが正常に実行され、次の行を karma.config に追加することで、コード カバレッジも生成されます。

ただし、何らかの理由で lib/rxjs フォルダーも対象としています。上記の構成でさまざまな組み合わせを試しましたが、その lib フォルダーを除外することに成功しませんでした。

どんな助けでも大歓迎です。

詳細 - 私は karma-coverage のみを使用しており、karma-remap-Istanbul は使用していません。

0 投票する
1 に答える
963 参照

angular - Angular2 の単体テストでソース マップが機能しない

angular-cli 1.0.0-beta.18 によって生成された Angular2 プロジェクトを開発しています。

一般的に、テンプレートは非常にうまく機能しています。ただし、(Chrome で) 単体テストをデバッグしようとすると、コードが理解できません。

私がすることは:

  1. 実行してテストを開始しますng test
  2. Google Chrome ブラウザが開きます
  3. テストが実行されたことをコンソールで確認できます。Executed 36 of 36...
  4. テストをデバッグしたいのでDEBUG、Chrome でボタンをクリックすると、新しいタブが開きます。
  5. そのタブで、開発者ツールを開きます。
  6. Ctrl-Pファイルの検索と表示に使用できるようになりました。コードは仕様に対して読み取り可能です。
  7. ただし、実装コードを開くと、次のようになります

ここに画像の説明を入力

ファイルが圧縮されているか、コード カバレッジ ツールによって変換されているようです。パーツを考えると後者の可能性が高いと思われます__coverage__。ソースマップは明らかに有効ではありません。

ソース マップを機能させるにはどうすればよいですか?

karma.conf.jsコード カバレッジ レポート (Istanbul など) への参照をすべて削除するようにファイルを変更してみました。以下を参照してください。しかし、これは動作に違いはありません:

0 投票する
1 に答える
493 参照

karma-runner - WebStorm を使用して単一の Karma テストをデバッグする方法

Karma と WebStorm を使用して単一のテストをデバッグしようとしています。これができることがわかりました、

  1. カバレッジレポーターを使用せず、 --reportor progress を指定して karma.config を実行するとこれが機能しません
  2. it into fit単体テストで変更。

WebStorm を使用して単一の Karma テストをデバッグするには?

カルマ.config