RubyMine 2026.1 Help

Jestⶠⶁⶠⱼⶠ

Jest はクライアントサイド JavaScript アプリケーションおよび React アプリケーション向けのテストプラットフォームです。 プラットフォームの詳細については、 Jest(英語) の公式 Web サイトを参照してください。

RubyMine で Jest のテストを実行・デバッグできます。 テスト結果はツリービューで確認でき、そこからテストソースに簡単に移動できます。 テストのステータスは、エディターでテストの横に表示され、すぐに実行したりデバッグすることができます。

始める前に

  1. Node.js をダウンロードしてインストールします。

  2. 設定で JavaScript and TypeScript プラグインが有効になっていることを確認します。 Ctrl+Alt+S を押して設定を開き、 プラグイン を選択します。 インストール済み タブをクリックします。 検索フィールドに JavaScript and TypeScript と入力します。 プラグインの詳細については、 プラグイン管理を参照してください。

Jest をインストールして構成する

  • 組み込み ターミナル (Alt+F12) で次のように入力します。

    npm install --save-dev jest

Jest 公式 Web サイトで オンラインドキュメント(英語)および Jest の設定(英語)の詳細を参照してください。

テストの実行

RubyMine を利用すると、エディターから単一の Jest テストを素早く実行したり、実行 / デバッグ構成を作成してすべてまたは一部のテストを実行できます。

JavaScript および TypeScript コードの Vitest テストの作成の詳細については、Vitest 公式 Web サイトの Vitest の機能(英語)を参照してください。

エディターから単一のテストを実行する

  • ガターで 実行アイコン または 再実行アイコン をクリックし、リストから <test_name> を実行する。 を選択します。

    Run single test from the editor

    エディターのガターにある テストステータスアイコン テスト合格 および テスト失敗 でテストが合格したか失敗したかを確認できます。

プロジェクトツールウィンドウからフォルダー内のすべてのテストを実行する

  • プロジェクト ツールウィンドウ(Alt+1 )で、テストが入っているフォルダーを選択し、次に 「フォルダー名」にあるテストの実行 を選択します。

    フォルダー内のすべてのテストを実行する

Jest 実行構成を作成する

  1. 実行 / デバッグ構成ダイアログ (メインメニューの 実行 | 実行構成の編集) を開き、左側のペインで 追加ボタン をクリックし、リストから Jestⶠⶁⶠⱼⶠ を選択します。 実行/デバッグ構成: Jestダイアログが開きます。

  2. 使用する Node.js ランタイムを指定します。

    プロジェクト エイリアスを選択すると、RubyMine は ノードランタイム フィールドから JavaScript ランタイム ページのプロジェクトデフォルトインタープリターを自動的に使用します。 ほとんどの場合、RubyMine がプロジェクトのデフォルトランタイムを検出し、自動的にそのフィールドに入力します。

    別の構成済みのローカルインタープリターまたはリモートインタープリターを選択するか、 閲覧ボタン をクリックして新しいインタープリターを構成することもできます。

  3. jestreact-scriptsreact-script-tsreact-super-scriptsreact-awesome-scripts パッケージの場所を指定します。

  4. アプリケーションの作業ディレクトリを指定します。 デフォルトでは、 作業ディレクトリ フィールドにはプロジェクトのルートフォルダーが表示されます。 この事前定義された設定を変更するには、目的のフォルダーへのパスを指定してください。

  5. 実行するテストを指定します。 これは、特定のテストまたはスイート、テストファイル全体、テストファイルを含むフォルダーにすることができます。

  6. オプション:

    使用する jest.config.js または jest.config.ts ファイルを指定してください。リストから該当ファイルを選択するか、 閲覧ボタン をクリックして表示されるダイアログで選択するか、フィールドにパスを直接入力してください。

    フィールドが空の場合、RubyMine は jest キーを持つ package.json ファイルを探します。 検索は、 作業ディレクトリから上に向かってファイルシステムで実行されます。 適切な package.json ファイルが見つからない場合、 Jest のデフォルト設定(英語)がオンザフライで生成されます。

  7. オプション:

    関連するソースファイルの変更時に自動的に再実行されるテストを構成します。 これを行うには、 Jest オプション フィールドに --watch フラグを追加します。

    テストセッション中に 実行 ツールウィンドウの 変更をウォッチする トグルボタンを押して、後で ウォッチモードをオンにすることもできます。以下の 変更時にテストを自動的に再実行する (ウォッチモード)を参照してください。

  8. オプション:

    コマンドを実行するための環境変数を指定します。 RubyMine はこれらの変数を process.env の補完リストに表示します。

    Jest 実行構成からの環境変数の補完
  9. ノード オプション フィールドに、必要に応じて、Node.js 実行可能ファイルに渡される Node.js 固有のコマンドラインオプションを入力します。 許容されるオプションは次のとおりです。

    • 実行中に CoffeeScript ファイルをオンザフライで JavaScript にコンパイルするには、 --require coffeescript/register を使用します。

      このモードでは、 coffeescript パッケージの一部である register.js ファイルがプロジェクト内に配置されている必要があります。 そのため、 CoffeeScript コンパイラーのインストールで説明されている通り、 coffeescript パッケージがローカルにインストールされていることを確認してください。

    • Chrome デバッグプロトコル(英語)サポートには --インスペクション または --inspect-brk パラメーターを使用します。

    • プロジェクトで ECMAScript モジュール(英語)を使用するには、 —experimental-vm-modules フラグを ノード オプション フィールドに追加します。

実行構成を介してテストを実行する

  1. 構成の一覧から Jest 実行 / デバッグ構成を選択し、一覧またはツールバーの 実行アイコン をクリックします。

  2. 実行 ツールウィンドウの テストランナー タブで、テストの実行を監視し、テスト結果を分析します。 詳細については、 テスト結果を調べる を参照してください。

失敗したテストの再実行

  • テスト結果ツールバーの 失敗したテストの再実行アイコン をクリックします。 RubyMine は、前回のセッション中に失敗したすべてのテストを実行します。

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

詳細は、 テストの再実行を参照してください。

変更時にテストを自動的に再実行する (ウォッチモード)

RubyMine は、テスト関連ソースファイルに変更があるたびにテストが自動で再実行される ウォッチモードをサポートしています。 その結果、手動でテストを再実行したり、 Jestⶠⶁⶠⱼⶠ 実行 / デバッグ構成を再起動したりすることなく、コードに変更を加えるだけで済みます。

  • テストランナータブで、 変更をウォッチする トグルボタンを押します。

    Turn on the Watch Changes mode
  • あるいは、実行/デバッグ構成の Jest オプション フィールドに --watch フラグを追加し、上記の Jest 実行構成を作成するを参照してください。

ナビゲーション

RubyMine を使うと、ファイルと関連するテストファイル間や テストランナータブのテスト結果からテストへ移動できます。

RubyMine を利用すると、ファイルと関連するテストファイル、またはテスト・スイート定義と テストランナータブ内の結果との間を移動できます。

  • テストとそのサブジェクト間、またはその逆に移動するには、エディターでファイルを開き、コンテキストメニューから 移動 | テスト または | Test Subject へ移動 を選択するか、 Ctrl+Shift+T を押します。

  • テスト結果からテスト定義に移動するには、「テストランナー 」タブでテスト名を 2 回クリックするか、コンテキストメニューから「ソースに移動 」を選択するか、単に F4 を押します。 テストファイルがエディターで開き、テスト定義にキャレットが置かれます。

  • テストまたはスイートの定義から テストランナー タブの結果に移動するには、ガターで テスト合格アイコン または テスト失敗アイコン をクリックし、リストから テストツリーで <test_name> を選択 を選択します。

    Jump from test definition to the Test Tree
  • 失敗したテストの場合、RubyMine はスタックトレースからテストの失敗行に移動します。 正確な行がスタックトレースにない場合は、テスト定義に移動します。

    Jump to the failure line from a failed Jest test

スナップショットテスト

RubyMine と Jest の統合では、スナップショットテストなどの優れた機能がサポートされています。

.toMatchSnapshot() メソッドでテストを実行すると、Jest は __snapshots__ フォルダーにスナップショットファイルを作成します。 テストから関連するスナップショットに移動するには、テストの横のガターで Go to スナップショット(カメラ)アイコン をクリックするか、 .toMatchSnapshot() メソッドのコンテキストメニューから必要なスナップショットを選択します。

Jest スナップショットテスト: テストファイルから対応するスナップショットに移動する

スナップショットがレンダリングされたアプリケーションと一致しない場合、テストは失敗します。 これは、コードの一部の変更によりこの不一致が発生したか、スナップショットが古いため更新する必要があることを示しています。

この不一致の原因を確認するには、 テストランナー タブの右ペインにある 差異を見るにはクリック リンクから RubyMine の組み込み 差分ビューアーを開いてください。

Jest snapshots: compare the expected and actual snapshots in the RubyMine Diff Viewer

実行 ツールウィンドウの テストランナー タブから、古いスナップショットを直接更新できます。

  • 特定のテストのスナップショットを更新するには、テスト名の横にある クリックしてスナップショットを更新 リンクを使用します。

  • テストの古いスナップショットをすべてファイルから更新するには、テストファイル名の横にある クリックして失敗したスナップショットを更新 を使用します。

Jest スナップショットテスト: スナップショットの更新

デバッグテスト

RubyMine で、エディターから単一の Jest テストをすぐにデバッグしたり、実行 / デバッグ構成を作成して一部またはすべてのテストをデバッグできます。

  • 必要に応じて ブレークポイントを設定します

  • エディターから単一のテストのデバッグを開始するには、ガターで the Run button または 再実行アイコン をクリックし、リストから <test_name> をデバッグする。 を選択します。

  • フォルダー内のすべてのテストのデバッグを開始するには、 プロジェクト ツールウィンドウでフォルダーを選択し、コンテキストメニューから 「フォルダー名」にあるテストのデバッグ を選択します。

    フォルダー内のすべてのテストをデバッグする
  • 実行 / デバッグ構成を介してテストデバッグを開始するには、 上記の説明に従ってJest 実行 / デバッグ構成を作成します。

    次に、構成のリストから Jest 実行 / デバッグ構成を選択し、リストまたはツールバーの デバッグアイコン をクリックします。

開いた デバッグツールウィンドウ で、通常どおり操作します: プログラムをステップ実行実行の停止・再開中断時の調査 、コールスタックや変数の確認、ウォッチの設定、変数の評価、 実際の HTML DOM の表示などが可能です。

コードカバレッジを監視する

RubyMine を利用すれば、 Jest テストでどれだけコードがカバーされているかも確認できます。 RubyMine は、この統計情報を専用の カバレッジ ツールウィンドウに表示し、カバーされた行とカバーされていない行をエディターと プロジェクト ツールウィンドウ (Alt+1) で視覚的にマークします。

カバレッジでテストを実行する

  1. 上記のように Jest 実行 / デバッグ構成を作成します。

  2. メインツールバーのリストから Jest 実行 / デバッグ構成を選択し、リストの右側にある カバレッジ付き実行アイコン をクリックします。

    または、エディターからカバレッジ付きで特定のスイートまたはテストをすばやく実行できます。ガターで the Run button または the Rerun button をクリックし、リストから カバレッジで <test_name> を実行する を選択します。

    エディターからのカバレッジで Jest テストを実行する
  3. カバレッジツールウィンドウでコードカバレッジを監視します。 このレポートには、テストでカバーされたファイルの数と、その中にカバーされている行の割合が表示されます。 レポートから、ファイルに移動して、どの行が覆われていたか(緑色にマーキングされているか、どの行が覆われていないか)、赤色に表示されているかを確認できます。

    Jest カバレッジレポート

Docker コンテナー内の Node.js で Jest テストを実行する

RubyMine を使用すると、ローカルと同様に Docker コンテナー内で Jest テストを実行できます。

始める前に

  1. JetBrains Marketplace からプラグインをインストールする方法に従い、 設定 | プラグイン ページ、 Marketplace タブで Node.js および Node.js リモートインタープリター プラグインをインストールしてください。

  2. 設定で Docker プラグインが有効になっていることを確認します。 Ctrl+Alt+S を押して設定を開き、 プラグイン を選択します。 インストール済み タブをクリックします。 検索フィールドに Docker と入力します。 プラグインの詳細については、 プラグイン管理を参照してください。

  3. Docker をダウンロード、インストールし、 Docker の説明に従って設定してください。

  4. Docker で Node.js リモートランタイムを構成するまたは Docker Compose 経由でインストールし、プロジェクトの デフォルトとして設定してください。 また、このリモートランタイムに関連付けられたパッケージマネージャーが プロジェクトのデフォルトとして設定されていることを確認してください。

  5. package.json を開き、Jest が devDependencies セクションにリストされていることを確認します。

    { "name": "node-express", "version": "0.0.0", "private": true, "dependencies": { "cookie-parser": "~1.4.4", "debug": "~2.6.9", "express": "~4.16.1", "http-errors": "~1.6.3", "morgan": "~1.9.1", "pug": "^3.0.2" }, "devDependencies": { "eslint": "^8.1.0", "http-server": "^14.0.0", "jest": "^27.3.1" } }
  6. エディターの任意の場所を右クリックして、コンテキストメニューから 「パッケージマネージャー install」を実行する。 を選択します。

テストの実行

  1. Jest オフィシャル Web サイト(英語)の指示に従ってテストを作成します。

  2. ローカル開発と同様に操作してください。エディターから単一テストを実行・デバッグしたり、 テストの実行および テストのデバッグで説明されているように、実行/デバッグ構成を作成して一部または全テストを起動できます。

2026 年 6 月 2 日