web-dev-qa-db-ja.com

IntelliJでは、Mavenのテスト目標をどのようにデバッグしますか?

IntellijとMaven POMファイルを使用して、Mavenテスト目標内で実行されるテストをどのようにデバッグしますか?

コードで直接実行すると、プロファイルが欠落しているという不満があります。これは、intellijのMavenプロジェクト内でチェックしています。

72
JavaRocky

目標を右クリックして、「[目標]をデバッグする」(あなたの場合はテスト目標)についてはどうですか?

debug goal

25
Colin Hebert

http://maven.Apache.org/plugins/maven-surefire-plugin/examples/debugging.html

IDEAで、デバッグモード「mvn -DforkMode=never test "

更新済み:実行/デバッグ構成を開き、「ランナー」タブで、-DforkMode=never

enter image description here

(@ mikeapr4で注意:新しいバージョンのsurefireプラグイン(2.14以降)はmvn -DforkCount=0 test

159
Hover Ruan

次のオプションを使用してテストを実行します。

mvn -Dmaven.surefire.debug="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=6666 -Xnoagent -Djava.compiler=NONE" test

...そして、リモートデバッガーでMavenに接続します。

27
Henryk Konsek

-DforkMode=neverは機能しなくなり、SureFireで非推奨になりました。

つかいます -DforkCount=0代わりに、surefireプラグイン2.14以降を使用する場合。

12
DesertBlade

質問に回答しました。しかし、私自身の経験を共有するだけです。選択した答えは私の問題を解決しませんでした。私のコードには複数のモジュールがあります。

愚か者の返事は私の問題に貴重な洞察をもたらしました。

私には2つの解決策があります。1。VMオプション-DforkMode=never;デバッグモードで実行する必要があります。 2. リモートデバッグを設定し、ソケットを指定します。この場合、forkModeは必要ありません。

これは、私がこれまで経験してきたことの単なる要約です。

9
Robin Loxley

Colin Hebertの解決策も私には役に立たない。しかし、幸いなことに、テストメソッドの横に表示される緑色の三角形を右クリックして、テストをデバッグする簡単な方法を見つけました。

Javaテストクラスの例

それがお役に立てば幸いです!

1
David DRM