3

JBehave ストーリーを Maven で実行しようとしていますが、JBehave プラグインを完全に無視しています。さまざまな構成を使用して数時間を費やしましたが、プラグインがまったく実行されていないようです。推奨事項/ヒントをいただければ幸いです。

すべての JBehave クラスは次の場所にあります。

ソース/アット/ジャバ

私の pom.xml の関連部分:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>build-helper-maven-plugin</artifactId>
    <version>1.5</version>
    <executions>
        <execution>
            <id>add-test-source</id>
            <phase>generate-sources</phase>
            <goals>
                <goal>add-test-source</goal>
            </goals>
            <configuration>
                <sources>
                    <source>src/at/java</source>
                 </sources>
            </configuration>
    </execution>
</executions>
</plugin>

<plugin>
    <groupId>org.jbehave</groupId>
    <artifactId>jbehave-maven-plugin</artifactId>
    <executions>
        <execution>
            <id>run-stories-as-embeddables</id>
            <phase>integration-test</phase>
            <configuration>
                <includes>
                     <include>**/*.java</include>
                </includes>
            </configuration>
           <goals>
               <goal>run-stories-as-embeddables</goal>
          </goals>
       </execution>
    </executions>
</plugin>


<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>2.11</version>
    <executions>
        <execution>
            <id>integration-test</id>
            <phase>integration-test</phase>
            <goals>
                <goal>test</goal>
           </goals>
           <configuration>
               <skip>false</skip>
              <includes>
                   <include>**/*.java</include>
               </includes>
           </configuration>
        </execution>
    </executions>
</plugin>
4

3 に答える 3

2

最善の方法は、テスト クラスの場所を src/test/java に変更し、ストーリーの名前を JBehave のドキュメントに基づいて変更することです。

于 2012-09-20T12:06:57.377 に答える
0

おそらく、jbehave-maven-plugin はコンパイルされたテスト クラス (シナリオ) を見つけることができませんでした。これは、間違ったクラスパスを参照しているためです。

ターゲット ディレクトリを見て、埋め込み可能なクラスを検索してください -> target/classes または target/test-classes?

この問題を解決するには、プロジェクト pom.xml の構成でテストする jbehave-maven-plugin のスコープを設定する必要があります。

ここに例があります

<plugin>
            <groupId>org.jbehave</groupId>
            <artifactId>jbehave-maven-plugin</artifactId>
            <executions>
                <execution>
                    <id>run-stories-as-embeddables</id>
                    <phase>integration-test</phase>
                    <goals>
                        <goal>run-stories-as-embeddables</goal>
                    </goals>
                    <configuration>
                        <scope>test</scope>
                        <includes>
                            <include>**/*Scenarios.java</include>
                        </includes>
                        <ignoreFailureInStories>true</ignoreFailureInStories>
                        <ignoreFailureInView>false</ignoreFailureInView>
                    </configuration>
                </execution>
于 2014-05-11T20:57:58.453 に答える