3

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の使用を試みることはできますが、自動化するにはおそらく完全なタイミングが必要になるため、最適ではないソリューションのように聞こえます。JBehaveMavenプラグインがこの機能を提供する必要があると思います。明らかに、私はまだ適切な文書を見つけていません。私がこれについてどうやって行くのかアイデアはありますか?

4

4 に答える 4

2

以下は私のために働いた:export MAVEN_OPTS = "-Xdebug -Xrunjdwp:transport = dt_socket、server = y、suspend = y、address = 8787 -Xnoagent -Djava.compiler = NONE"

次に、mvnテストを開始します:mvn install

(Mavenは、デバッガーが接続するのを待ってハングします)

次に、適切なブレークポイントを設定して、ローカルホストのポート8787(上記のとおり)をポイントして、リモートデバッグセッションでEclipseを起動します。

于 2009-05-11T20:45:20.880 に答える
0

Maven でテストを開始するのではなく、JUnit を使用して IDE でテストを開始する方が簡単ではないでしょうか? その後、デバッガを直接使用できますか? 私は通常、CI サーバーが Maven を使用して JBehave を実行するようにしますが、IDE では、より直接的な実行方法を好みます。

于 2012-06-22T15:14:29.463 に答える
0

これは私のために働いた:

  1. Eclipse で実行->デバッグ構成...
  2. Maven ビルドを選択し、[新規] ボタンをクリックします
  3. 目標(clean very私の場合)と可能なパラメータを設定します
  4. デバッグボタンを押す
于 2018-06-14T08:21:22.257 に答える
-1

mvn -e -o -Dmaven.surefire.debug="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8787 -Xnoagent -Djava.compiler=NONE" 統合テスト

この行は私にとって完璧に機能しました。デバッグ ポート (8787) を使用して Eclipse で Jbehave プロジェクトをセットアップし、mvn が Eclipse プロジェクトへの接続を待機している間にデバッガーにすばやく接続します。

于 2016-10-13T19:19:15.220 に答える