質問
うまくデバッグマjbehave。私はmavenのjbehave試験および停止時のブレークポイントを設定します。私はこの私のpom:
<pluginManagement>
<plugins>
<plugin>
<groupId>org.jbehave</groupId>
<artifactId>jbehave-maven-plugin</artifactId>
<version>2.0.1</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.jbehave</groupId>
<artifactId>jbehave-maven-plugin</artifactId>
<executions>
<execution>
<id>run-scenarios-found</id>
<phase>test</phase>
<configuration>
<scenarioIncludes>
<scenarioInclude>**/scenario/**/*${test}.java</scenarioInclude>
</scenarioIncludes>
<scenarioExcludes>
<scenarioExclude>**/*Steps.java</scenarioExclude>
</scenarioExcludes>
</configuration>
<goals>
<goal>run-scenarios</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
というようなもの:
$ mvn -e -o -Dtest=MyTest -Dmaven.surefire.debug="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8787 -Xnoagent -Djava.compiler=NONE" clean test
や
$ export MVN_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8787 -Xnoagent -Djava.compiler=NONE" ; mvn -Dtest=MyTest clean test
で利用するようにして jsadebugd, がいることが要求されるであろう看タイミングを自動化し、その音のように入液をしみを感じてもらいたいというようにJBehave Mavenプラグインはこの機能.を明確にしていまだ見つかりませんで右のdocumetationます。そのアイデアをどう行くのか。
解決
以下は、私のために働きました。 輸出MAVEN_OPTS = " - Xdebugの-Xrunjdwp:輸送= dt_socketという、サーバー= Y、一時停止= Y、アドレス= 8787 -Xnoagentは、-Djava.compiler = NONE"
そして、私のMVNのテストを開始します。 MVNインストール
(Mavenのが、今で接続するデバッガを待ってハング)
適切なブレークポイントを設定して次に、(上記のような)ローカルホスト、ポート8787を指し、リモート・デバッグ・セッションでEclipseを起動します。
他のヒント
Mavenを用いた試験を開始するのではなく、JUnitを用いたIDEにしない方が簡単ではないでしょうか?そして、あなたは直接デバッガを使用することができますか?私は通常、CIサーバはJBehaveを実行するためにMavenを使用しているので、それを行うが、IDEで、私は、実行のより直接的な方法を好むます。
この試験:
- Eclipse 走 -> デバッグの構成に...
- 選択 Mavenの構築 をクリックし 新しい ボタン
- セットの目標(
clean very
私の場合)および可能なパラメータ - ヒット デバッグ ボタン
MVN -e -o -Dmaven.surefire.debug = " - Xdebugの-Xrunjdwp:輸送= dt_socketという、サーバ= Y = yと一時停止、アドレス= 8787 -Xnoagentは、-Djava.compiler = NONE" 統合テスト
この行は私のために完璧に働きました。 EclipseのセットアップあなたのJbehaveプロジェクト デバッグポート(8787)を持つとMVNをEclipseのプロジェクトに接続するために待っている間にすぐにデバッガに接続します。