Karma
始める前に
Karma をインストールする
Karma 自体に加えて、 karma-jasmine や jasmine-core などの追加のパッケージ (プラグイン) が必要です。 Karma オフィシャル Web サイト(英語)から詳細を参照してください。
埋め込まれた ターミナル (Alt+F12) を開きます。
次のいずれかのコマンドを入力してください:
Karma と必要なすべてのプラグインが package.json にすでに定義されている場合は
npm install開発の依存関係(英語)として Karma とプラグインをインストールするには:
npm install --save-dev karma npm install --save-dev <karma_plugin> <another_karma_plugin>
Karma 構成ファイルを生成する
Karma テストは、対話モードで生成された karma.conf.js 構成ファイルに従って実行されます。 プロジェクトにすでに karma.conf.js がある場合は、この手順をスキップしてください。 Karma 構成の詳細については、「Karma オフィシャル Web サイト(英語) 」を参照してください。
Karma 構成ファイルを作成する
ターミナル を開き、オペレーティングシステムに応じて次のいずれかを入力して karma.conf.js 生成ウィザードを開始します。
macOS および Linux の場合: ./node_modules/karma/bin/karma init
Windows の場合:
npm install -g karma-cli karma init
ウィザードの質問に答え、使用するテストフレームワークと自動でキャプチャされるブラウザーを指定してください。
Karma ファイル: パターンマッチング(英語)も参照してください。
テストの実行
RubyMine を使えば、エディターから単一の Karma テストをすぐに実行したり、いくつかまたはすべてのテストを実行するための実行 / デバッグ構成を作成できます。
エディターから単一のテストを実行する
左側のガターの
または
をクリックして、リストから <test_name> を実行する。 を選択します。
ガターの テストステータスアイコン
および
により、エディターでテストが成功したか失敗したかを確認することもできます。
Karma 実行構成を作成する
実行 / デバッグ構成ダイアログ (メインメニューの ) を開き、左側のペインで
をクリックし、リストから Karma を選択します。 実行 / デバッグ構成: Karma ダイアログが開きます。
使用する Node.js ランタイムを指定します。
プロジェクト エイリアスを選択すると、RubyMine は ノードランタイム フィールドから JavaScript ランタイム ページのプロジェクトデフォルトインタープリターを自動的に使用します。 ほとんどの場合、RubyMine がプロジェクトのデフォルトランタイムを検出し、自動的にそのフィールドに入力します。
別の構成済みのローカルインタープリターまたはリモートインタープリターを選択するか、
をクリックして新しいインタープリターを構成することもできます。
必要に応じて、Node.js に渡す Node.js 固有のオプションパラメーターと 環境変数(英語)を指定します。
karma.conf.js へのパスを指定します。
使用する
karmaパッケージを指定します。 これは次のいずれかです。Karma インストールホーム /npm/node_modules/karma 。 ノードパッケージマネージャー を通じて Karma を通常通りインストールした場合、RubyMine が Karma のインストールホームを自動で検出します。
node_modules/@angular/cliへのパス。Nx(英語) を使用している場合は、
node_modules/nxへのパス。

アプリケーションの作業ディレクトリを指定します。 デフォルトでは、 作業ディレクトリ フィールドにはプロジェクトのルートフォルダーが表示されます。 この事前定義された設定を変更するには、目的のフォルダーへのパスを指定してください。
実行するテストを指定します。 これは、特定のテストまたはスイート、テストファイル全体、テストファイルを含むフォルダーにすることができます。
必要に応じて、Karma に渡すコマンドラインオプションを指定して、 karma.conf.js 構成ファイルのデフォルト設定を上書きします。
例: ヘッドレス Chrome でテストを実行またはデバッグするには、 Karma オプション フィールドに
--browsers ChromeHeadlessと入力します。 詳細については、「ヘッドレス Chrome による自動テスト(英語) 」を参照してください。使用可能なすべての CLI オプションを表示するには、 ターミナル Alt+F12 に
karma start --helpと入力します。
実行構成を介してテストを実行する
構成の一覧から Karma 実行 / デバッグ構成を選択し、一覧またはツールバーの
をクリックします。
実行 ツールウィンドウの テストランナー タブで、テストの実行を監視し、テスト結果を分析します。 詳細については、 テスト結果を調べる を参照してください。
失敗したテストの再実行
テスト結果ツールバーの
をクリックします。 RubyMine は、前回のセッション中に失敗したすべてのテストを実行します。

特定の失敗したテストを再実行するには、そのコンテキストメニューで を選択します。

前回のセッションからすべてのテストを再実行するには、テスト結果ツールバーの
をクリックするか、 Ctrl+F5 を押します。
関連するソースコードを変更した後にテストを自動的に再実行するには、テスト結果ツールバーの
を押します。
詳細は、 テストの再実行を参照してください。
ナビゲーション
RubyMine を使うと、ファイルと関連するテストファイル間や テストランナータブのテスト結果からテストへ移動できます。
テストとそのサブジェクト間、またはその逆に移動するには、エディターでファイルを開き、コンテキストメニューから または を選択するか、 Ctrl+Shift+T を押します。
テスト結果からテスト定義に移動するには、「テストランナー 」タブでテスト名を 2 回クリックするか、コンテキストメニューから「 」を選択するか、単に F4 を押します。 テストファイルがエディターで開き、テスト定義にキャレットが置かれます。
失敗したテストの場合、RubyMine はスタックトレースからテストの失敗行に移動します。 正確な行がスタックトレースにない場合は、テスト定義に移動します。
デバッグテスト
RubyMine を使えば、エディターからすぐに単一の Karma テストのデバッグを開始したり、いくつかまたはすべてのテストをデバッグするための実行 / デバッグ構成を作成できます。
エディターから単一のテストのデバッグを開始する
テスト中の ブレークポイントを設定します。
ガターで
または
をクリックし、リストから <test_name> をデバッグする。 を選択します。
実行 / デバッグ構成を介してテストデバッグを起動する
必要に応じて ブレークポイントの設定。
上記のように Karma 実行 / デバッグ構成を作成します。
構成の一覧から Karma 実行 / デバッグ構成を選択し、一覧またはツールバーの
をクリックします。
開いた デバッグツールウィンドウ で、通常どおり操作します: プログラムをステップ実行、 実行の停止・再開、 中断時の調査 、コールスタックや変数の確認、ウォッチの設定、変数の評価、 実際の HTML DOM の表示などが可能です。
コードカバレッジを監視する
RubyMine を使えば、コードが Karma テストでカバーされている割合も確認できます。 RubyMine は、この統計情報を専用の カバレッジ ツールウィンドウに表示し、カバーされた行とカバーされていない行をエディターと プロジェクト ツールウィンドウ (Alt+1) で視覚的にマークします。 カバレッジを監視するには、 karma-coverage パッケージをインストールし、 karma.conf.js を更新する必要があります。
カルマカバレッジをインストールする
組み込み ターミナル (Alt+F12) で次のように入力します。
npm install  --save-dev karma-coverage
Karma-coverage 定義を構成ファイルに追加する
エディターで karma.conf.js を開きます。
reporters定義を見つけ、coverageを次の形式の値のリストに追加します。reporters: ['progress', 'coverage']preprocessors定義を追加し、カバレッジスコープを次の形式で指定します。preprocessors: {'**/*.js': ['coverage']}
カバレッジ付きでテストを開始する
上記のように Karma 実行 / デバッグ構成を作成します。
構成の一覧から Karma 実行 / デバッグ構成を選択し、一覧またはツールバーの
をクリックします。
または、エディターのテストアイコンを使って、特定のスイートやカバレッジ付きのテストをすばやく実行できます。

カバレッジツールウィンドウでコードカバレッジを監視します。
Karma テストが実行されるたびに、カバレッジレポートが実際にディスク上に生成されます。 カバレッジレポートの形式は、次のように設定ファイルで設定できます。
// karma.conf.js module.exports = function(config) { config.set({ ... // optionally, configure the reporter coverageReporter: { type : 'html', dir : 'coverage/' } ... });};次の
型値を使用できます。htmlはアノテーション付きソースコードを含む一連の HTML ファイルを生成します。lcovonlyは lcov.info ファイルを作成します。lcovは HTML + .lcov ファイルを生成します。 このフォーマットはデフォルトで適用されます。coberturaは、Hudson と簡単に統合するための cobertura-coverage.xml ファイルを生成します。text-summaryは、通常はコンソールに、カバレッジの簡潔なテキスト要約を生成します。textは、すべてのファイルのカバレッジを持つ詳細なテキストテーブルを生成します。