問題タブ [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.
javascript - タイプスクリプト + カルマ + webpack + コードカバレッジが機能しない
ステップバイステップの手順に従って、angular1 プロジェクトを angular2 に移行したいと考えています。したがって、typescript をプロジェクトに追加しました。しかし今、Karma、Webpack、および CodeCoverage で実行する際に問題が発生しています。単体テストはすべて緑色ですが、コード カバレッジのレポートには ".ts" ファイルが表示されません。
これを機能させるには、karma.config をどのように構成する必要がありますか? 私はすでに「karma-typescript」と「karma-remap-istanbul」を試しましたが、すべての依存関係の正しい設定を取得することに行き詰まっています。
ここに私のkarma.conf.jsがあります:
これは、すべてのリソースが個別にロードされる「karma.import.js」です。
javascript - カルマを使用して Aurelia アプリでコード カバレッジの結果を取得するにはどうすればよいですか?
Aurelia CLI ( ) を使用して Aurelia アプリを作成し、au new
コード カバレッジを設定したいと考えています (できればkarma-coverageを使用しますが、それが不可能な場合は何でも使用します)。
まず、タスクを a にnpm install karma-coverage --save-dev
コピーします( を実行できるようにします)。test.js
cover.js
au cover
cover.js
これは…どこかに行きますか?
しかし、テストが個々の src ファイルにリンクされているとは思いません (代わりに にリンクされていますapp-bundle.js
)。
Aurelia アプリの src ファイル レベル (つまり、バンドル レベルではない) でコード カバレッジを取得する方法はありますか?
その他の関心のあるファイル
app.js
カルマ.conf.js
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 ファイルです。
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 は使用していません。
angular - Angular2 の単体テストでソース マップが機能しない
angular-cli 1.0.0-beta.18 によって生成された Angular2 プロジェクトを開発しています。
一般的に、テンプレートは非常にうまく機能しています。ただし、(Chrome で) 単体テストをデバッグしようとすると、コードが理解できません。
私がすることは:
- 実行してテストを開始します
ng test
- Google Chrome ブラウザが開きます
- テストが実行されたことをコンソールで確認できます。
Executed 36 of 36...
- テストをデバッグしたいので
DEBUG
、Chrome でボタンをクリックすると、新しいタブが開きます。 - そのタブで、開発者ツールを開きます。
Ctrl-P
ファイルの検索と表示に使用できるようになりました。コードは仕様に対して読み取り可能です。- ただし、実装コードを開くと、次のようになります
ファイルが圧縮されているか、コード カバレッジ ツールによって変換されているようです。パーツを考えると後者の可能性が高いと思われます__coverage__
。ソースマップは明らかに有効ではありません。
ソース マップを機能させるにはどうすればよいですか?
karma.conf.js
コード カバレッジ レポート (Istanbul など) への参照をすべて削除するようにファイルを変更してみました。以下を参照してください。しかし、これは動作に違いはありません:
karma-runner - WebStorm を使用して単一の Karma テストをデバッグする方法
Karma と WebStorm を使用して単一のテストをデバッグしようとしています。これができることがわかりました、
- カバレッジレポーターを使用せず、 --reportor progress を指定して karma.config を実行すると、これが機能しません
it into fit
単体テストで変更。
WebStorm を使用して単一の Karma テストをデバッグするには?
カルマ.config