IntelliJ IDEA 2018.2 Help

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 svg アイコンをクリックし、実行 '名前'を選択します。

    scala run app editor

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

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

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

  2. ビルドとインポートをsbtに委譲する場合は、sbtプロジェクトツールウィンドウで icons general settings svg アイコンをクリックして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. 表示されるリストで、メインメソッドを実行するrunタスクを選択します。

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

Scalaワークシートを使用してScalaコードを実行する

IntelliJ IDEAは、Scalaワークシートを作成して、Scalaコードの結果を評価します。

  1. プロジェクトを右クリックし、新規 | Scala ワークシートを選択します。

    srcディレクトリにワークシートを作成して、プロジェクトのクラスをクラスパスに簡単に組み込むことをお勧めします。それはテストの目的に役立つかもしれません。

  2. 新しいScalaワークシートウィンドウで、Scalaワークシートの名前を入力し、OKをクリックします。

    その結果、.sc拡張子のファイルが開きます。

    sc worksheet
  3. コードを入力し、 icons toolwindows toolWindowRun svg を押して結果を確認してください。

  4. .scファイルの操作中に、次の操作を実行できます。
    • Scalaオブジェクトを評価することができます。

    • 左側のコードに影響を与えずに出力を折りたたみ、特定のステートメントに一致する出力のブロックだけを展開することができます。

      sc wsheet unfold

    • ワークシートエディタのツールバーの設定 icons general settings svg アイコンをクリックして、現在のワークシート設定または他のワークシートに影響するプロジェクト全体のデフォルトのワークシート設定を構成できます。
      sc ws settings
      • 結果を自動的に表示するには、インタラクティブモードチェックボックスを選択します。

      • 評価パフォーマンスを向上させるには、プロジェクトのビルドチェックボックスをオフにします。この場合、プロジェクトの変更の自動チェックは無効になります。

      • 実行タイプオプションを選択すると、さまざまな評価モードが表示されます。例:REPL(英語)タイプを選択して、Scala式をすばやく評価します。新しい式を追加すると、それらは徐々に実行されます。

      • モジュールのクラスパスを使用するオプションは、ワークシートが他のプロジェクト間で共有できるファイルであり、作成した場所のままでなければならないため、無効になっています。デフォルトの設定でその場所を変更できますが、プロジェクト全体に適用され、他のワークシートにも影響します。クラスパスを変更する必要がある場合は、代わりにスクラッチ・ファイルを作成して使用することをお勧めします。

        sc scratch file

      • ワークシートのコンパイラ・プロファイルを選択することもできます。 icons general settings svg をクリックすると、Scalaコンパイラの設定にアクセスしてより多くのオプションが表示されます。コンパイラの設定ページでプロファイルを追加/変更し、sbtプロジェクトがある場合、変更は次のプロジェクトインポート時に破棄されることに注意してください。

      • ワークシート設定のその他のオプションについては、ファイル | 設定 | 言語とフレームワーク | Scalaを選択し、ワークシートタブをクリックします。
        sc worksheet settings
        例:ワークシートタブで、出力カットオフの制限を設定したり、ワークシートを実行するモードを指定したり、IntelliJ IDEAに.scファイルとスクラッチファイルをどのように扱わせるかを設定したりできます。

Scalaコードをデバッグする

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

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

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

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

  3. 必要に応じて、実行/デバッグ構成(Run | Edit Configurations)にアクセスして設定を調整できますが、通常、デフォルト設定ではデバッグセッションを正常に開始して完了させることができます。

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

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

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

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

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

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

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

  5. sbtシェルツールウィンドウで、 icons actions startDebugger svg アイコンをクリックしてデバッガサーバに接続し、デバッグセッションを開始します。
    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 svg アイコンをクリックするか、 build.sbtを変更するたびに自動的にプロジェクトを更新するために、sbt設定で指定された自動インポートオプションを使用します。

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

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

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

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

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

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

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

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

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

  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 svg アイコンをクリックし、カバレッジで '名前'を実行オプションを選択します。
    IntelliJ IDEAはテストを実行し、カバレッジツールウィンドウにコードカバレッジ情報を表示します。

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

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

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

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

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

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

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

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

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

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

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

最終更新日: 2018年10月25日