2つ以上のIDEAモジュールからすべてのテストを一度に実行するにはどうすればよいですか?
私は多くのモジュールを使用していますが、すべての単体テストを頻繁に実行することが重要です。実行するフォルダーを複数選択すると、コンテキストメニューに[実行]オプションがなくなります。
最良の方法:(3年後に編集)
これを達成するためのさらに良い方法があります。
メニューの「実行」→「構成の編集...」を選択します。左上隅にある緑色のプラス記号をクリックして、JUnitを選択します。
[パターンの種類]で[テストの種類]を選択し、表示されるとおりにこの正規表現を入力します:^(?!.*IT$).*$
(キャレット^
で始まり、ドル$
で終わります)。この正規表現は、名前がITで終わっていないすべてのテストです。
[テストの検索]から[プロジェクト全体]を選択します。作業ディレクトリは、トップモジュールの作業ディレクトリに設定する必要があります(デフォルトで設定する必要があります)。
「すべてのユニットテスト」などのテストの名前を入力します。また、この構成が後で消えないように、「共有」オプションにマークを付けることも好みます。 [適用]および[OK]をクリックします。
ニーズに合わせてこの正規表現を試すことができます。
元の回答:
快適ではありませんが、実行可能です。
test/Java
ディレクトリを右クリックして[すべてのテストを実行]を選択します。テスト構成を作成します。この方法で、構成を順番に実行し、すべての構成に新しいタブを取得します。それでも、何もないよりはましです。
「実行構成」を作成する必要があります。
私が見つけた最も簡単な方法は、すべてのモジュールを選択し、それらを右クリックして、すべてのテストを実行することを選択することでした。これにより、"Whole Project"という設定が作成され、いつでも再実行できます。
これは、モジュールごとに単体テストを実行するため、受け入れられた答えよりも優れていることがわかりました。テストケースが実行時にモジュール固有のリソースを使用する場合、受け入れられた回答の最良の方法は機能しません。
すべてのモジュールを選択
右クリックして、すべてのテストを実行することを選択します
新しい実行構成を取得する
それほど明白ではない別のケースは、複数のプロジェクトでコードカバレッジが必要な場合です。素朴な解決策は、複数のプロジェクトを選択し、それらのすべてのユニットテストを一度に実行することです。結局のところ、クラスパスが変更され、IntelliJに実行構成ごとに1つのクラスパスエントリがある場合、ユニットテストは失敗する可能性があります。この場合、プロジェクトで単体テストを連続して実行するだけで十分です。これは、IntelliJ(2017.2.5 Community Edition)を実行するたびに、収集したカバレッジを以前に収集したカバレッジの統計に置き換えるか、追加するかを尋ねるからです。
これは、複数のモジュールを持つプロジェクトでうまくいきました。
新しいJUnit実行/デバッグ構成を作成します。テストの種類:「パッケージ内のすべて」テストの検索:「プロジェクト全体」
作業ディレクトリも指定する必要があります。