IntelliJ IDEA 2019.3ヘルプ

Scalaの実行、デバッグ、テスト

IntelliJ IDEAは、通常IntelliJ IDEAの他のアプリケーションと同様に、Scalaアプリケーションを実行、デバッグ、テストすることができます。IntelliJ IDEAでは、Scalaコードをカバレッジで実行し、コードカバレッジの設定を行うこともできます。

Scalaアプリケーションを実行する

ScalaコードをIntelliJ IDEAから実行する、sbtシェルを使用する、またはScala ワークシートを使用して簡単にコードを評価することができます。

Intellij IDEAを使用してScalaアプリケーションを実行する

  1. 通常IntelliJ IDEAで他のプロジェクトを作成またはインポートするのと同じように、Scalaプロジェクトを作成またはインポートします。

  2. エディターでアプリケーションを開きます。

  3. Shift+F10 を押してアプリケーションを実行します。または、エディターの左ガターで、icons toolwindows toolWindowRun アイコンをクリックし、実行 'name'を選択します。

    scala run app editor

sbtシェルを使用してScalaアプリケーションを実行する

任意のsbtプロジェクトの一部であるsbtシェルを使用してアプリケーションを実行できます。

  1. sbtプロジェクトを開きます。

  2. ビルドとインポートをsbtに委譲する場合は、sbtプロジェクトツールウィンドウで icons general settings アイコンをクリックしてsbt設定を開きます。
    sbt設定ページで、ビルドとインポートにsbtシェルを使用する (必要とされるsbt 0.13.5+)オプションを選択し、OKをクリックします。

    sbt settings for running sbt shell
    (このオプションは、sbtプロジェクトを作成またはインポートするときにも使用できます。)
    ビルドとインポートをsbtに委譲したくない場合でも、sbtシェルで作業できます(
    sbt shell icon
    )そして、アプリケーションの実行を含め、そこから直接sbtコマンド(英語)を実行します。

  3. sbtプロジェクトツールウィンドウで、sbtタスクノードをクリックします。

  4. 表示されたリストで、メインメソッドを実行する実行タスクを選択します。

    sbt tool window run task
    実行結果はsbtシェルツールウィンドウに表示されます。
    sbt shell run app

Scalaコードをデバッグする

IntelliJ IDEAでは、IntelliJ IDEAデバッガまたはsbtシェルを使用してコードをデバッグできます。

Intellij IDEAを使用してScalaコードをデバッグする

  1. エディターでScalaアプリケーションを開きます。

  2. 左ガターで、デバッグするコード行のブレークポイントを設定します。ブレークポイントの詳細については、ブレークポイントのトピックを参照してください。

  3. 必要に応じて、実行/デバッグ構成ダイアログ(実行|設定の編集)にアクセスして設定を調整できますが、通常はデフォルト設定でデバッグセッションを正常に開始して完了するのに十分です。

  4. Shift+F9を押します。または、メインツールバーで icons actions startDebugger アイコンをクリックして、デバッグプロセスを開始します。

  5. デバッグツールウィンドウで結果を評価します。

    デバッグツールウィンドウでオプションを使用する方法については、デバッグツールのウィンドウ参照を参照してください。

sbtシェルを使用してScalaコードをデバッグする

  1. sbtプロジェクトを開きます。

  2. エディターでアプリケーションを開きます。

  3. エディターで、左側のガターで、デバッグするコード行のブレークポイントを設定します。
    scala code breakpoints
  4. sbtプロジェクトツールウィンドウ

    sbt shell icon
    アイコン、sbtシェルを開始します。

  5. sbtシェルツールウィンドウで、icons actions startDebugger アイコンをクリックしてデバッガサーバーに接続し、デバッグセッションを開始します。
    IntelliJ IDEAはデバッグセッション用の実行/デバッグ構成も作成します。

    sbt run debug config for sbt shell
    必要に応じて、実行/デバッグ構成設定を編集できますが、コードを正常にデバッグするにはデフォルト設定で十分です。

  6. プログラムを実行します。

    sbt shell program
    デバッグツールウィンドウで結果を評価します。
    sbt debug tool window

Scalaアプリケーションのテスト

IntelliJ IDEAは、ScalaTest(英語)Specs2(英語)を使用してScalaアプリケーションをテストすることができます。また、テストスコープを設定して実行することもできます。

Scalaテストを使用してScalaアプリケーションをテストする

  1. プロジェクトを開きます。
    • sbtプロジェクトがある場合は、build.sbt ファイルを開き、ScalaTestに以下の依存関係を指定します。
      libraryDependencies += "org.scalactic" %% "scalactic" % "3.0.1"

      libraryDependencies += "org.scalatest" %% "scalatest" % "3.0.1" % "test"

      sbtプロジェクトツールウィンドウの icons actions refresh アイコンをクリックしてプロジェクトをリフレッシュするか、sbt設定で指定された自動インポートオプションを使用して build.sbtを変更するたびにプロジェクトを自動的にリフレッシュします。

    • 通常のScalaプロジェクトをお持ちの場合は、プロジェクト構造ダイアログを使用してテストライブラリを設定してください。

  2. エディターでテストを作成したいクラスを開き、クラス宣言を含む行の中にカーソルを置きます。

  3. Ctrl+Shift+T を押して新規テストの作成を選択します。

  4. ダイアログが開き、テスト設定を指定してOKをクリックします。

  5. エディターでテストを開くか、Ctrl+Shift+F10 を押すか、テストクラスを右クリックし、コンテキストメニューから実行 'test name'を選択します。

  6. IntelliJ IDEAは自動的にテストの実行/デバッグ設定を作成しますが、設定の設定を編集する場合は、メインメニューの実行 | 構成の編集をクリックします。

  7. 実行/デバッグ構成ダイアログの右側で、テストスイートの設定を指定し、OKをクリックします。
    設定には標準的なオプションがあり、詳細はテストの実施セクションを参照してください。ただし、次のScala関連のオプションを指定することもできます。
    • sbtシェルを使用するチェックボックスを選択すると、sbtシェルでテストが実行され、UIをsbtで使用するでプラットフォームテストランナーと同じ形式でテスト結果が表示されます。

    • テスト種類オプションを選択すると、実行するテストの種類を指定できます。例:正規表現を選択し、クラスとテストパターンを設定することができます。

  8. メインツールバーで、icons toolwindows toolWindowRun アイコンをクリックしてテストを実行します。

  9. 実行ツールウィンドウで結果を評価します。

Specs2を使用してScalaアプリケーションをテストする

Specs2を使用してScalaアプリケーションをテストする手順は、次のオプションを除いて、ScalaTestを使用してScalaアプリケーションをテストするセクションで説明した手順と同じです。

  • sbtプロジェクトには次の依存関係を指定する必要があります。
    libraryDependencies ++= Seq("org.specs2" %% "specs2-core" % "3.9.5" % "test")

    通常のScalaプロジェクトでは、プロジェクト構造ダイアログを使用してテストライブラリを設定します。

  • プラットフォームテストランナーと同じ形式でテスト結果を表示するUIをsbtで使用するオプションは使用できません。

Scalaのテストスコープ

IntelliJ IDEAでは、ScalaTestまたはSpecs2を使用してスコープをテストできます。

スコープ内でテストを実行したり、Scalaプロジェクトのスコープ全体をテストしたりすることができます。

  1. コードを作成します。次の例を確認してください。

    scalaTest code RunTestInScope

  2. エディターでは、テストスコープに応じて次の操作を実行できます。
    • スコープ内のいずれかのテストのコンテキストメニューを開くと、そのスコープ内の指定されたテストの実行構成だけを作成できます。

      scalaTest RunDebugConf for Test in Scope

    • スコープ全体のコンテキストメニューを開くと、スコープ内のすべてのテストの実行構成を作成できます。

      scalaTest RunDebug for Scope

  3. テストを実行し、実行ツールウィンドウで出力を表示します。

    scalaTes console RunTestInScope
    また、スコープテストを実行するためにsbtシェルを使用することもできます。

カバレッジ付きScalaテストを実行する

IntelliJ IDEAを使用すると、コードカバレッジでテストスイートを実行できます。

  1. プロジェクトを開きます。

  2. 問題のテストをエディターで開きます。

  3. 左ガターで、icons toolwindows toolWindowRun アイコンをクリックし、カバレッジで '名前'を実行オプションを選択します。
    IntelliJ IDEAはテストを実行し、カバレッジツールウィンドウにコードカバレッジ情報を表示します。

    また、必要に応じて、デフォルトのコードカバレッジ設定やコードカバレッジの動作を調整することもできます。

    すでにテストスイートを実行している場合、IntelliJ IDEAは自動的に実行/デバッグ設定を作成します。作成した実行構成を開き、設定を調整することができます。
    テストスイートの新しい実行構成を作成する場合は、次の手順を実行します。

    1. メインメニューから実行 | 構成の編集を選択します。

    2. 実行/デバッグ構成ダイアログで、左側のオプションから icons general add アイコンをクリックします。

    3. 表示されたリストから、必要な構成を選択します。

    4. 右のオプションから、コード・カバレッジタブをクリックします。

    5. デフォルト設定を調整し、OKをクリックします。
      詳細については、カバレッジ測定を構成するを参照してください。

    コードカバレッジの動作を調整することもできます。

    1. Ctrl+Alt+S を押して設定/環境設定ページを開きます。

    2. 左のオプションから、ビルド、実行、デプロイ | カバレッジを選択します。

    3. 右のオプションから設定を調整し、OKをクリックします。

最終更新日: 2019年12月24日

関連ページ:

ScalaワークシートとAmmoniteを使用する

ScalaワークシートまたはAmmoniteを使用して、Scalaコードを迅速に評価して実行できます。IntelliJ IDEAではScalaワークシートとAmmoniteファイルは同じファイル拡張子.scを持っているため、IntelliJ IDEAにあなたのプロジェクトでそのようなファイルを扱う方...

プロジェクト

新しいプロジェクトを作成するときは、プロジェクトの種類を選択し、SDKを構成し、プロジェクトの名前と場所を指定する必要があります。また、新規プロジェクトウィザードで必要な設定を指定することもできます。これにより、プロジェクトを初めて開くときに事前設定されるようになります。例:IDEはライブラリをロー...

sbt

既存のsbtプロジェクトを開く:新しいプロジェクトを作成するには、新規プロジェクト・ウィザードを起動し、Scalaやsbtを選択するなど、ウィザードで提案されている手順に従います。プロジェクトの場所、JDKおよびsbtおよびScalaバージョンを指定します。(sbtとScalaのバージョンは自動的に...

ブレークポイント

ブレークポイントは、特定のポイントでプログラムの実行を一時停止する特別なマーカーです。これにより、プログラムの状態と動作を調べることができます。ブレークポイントは、単純なもの(コードのある行に到達したときにプログラムを中断するなど)でも、より複雑なロジック(追加条件のチェック、ログメッセージの書き込...

デバッグツールウィンドウ。コンソール

このタブはでマークされ、出力およびエラー・ストリーム・メッセージを表示します。コンソールツールバー:スタックトレースの上下このボタンをクリックすると、スタックトレース内を上下に移動し、カーソルがソースコード内の対応する場所にジャンプします。ソフトラップを使用このボタンをクリックすると、出力のソフトラ...

テストの実施

通常、IntelliJ IDEAは、作成した実行/デバッグ構成を実行することによって、他のアプリケーションと同じ方法でテストを実行してデバッグします。その際、指定されたテストクラスまたはメソッドをテストランナーに渡します。多くの場合、コンテキストメニューからテストセッションを開始できます。この目的の...