7

JBehaveコアでテストしようとしている、単純なプロジェクトがあります。これは、maven-kosher方式で実行します(つまり、src / mainでの本番、src / testでのテスト、追加での統合テストです。 src / it / {java、resources}のパス、およびテストでスコープされたテスト依存関係)。これをすべて一緒に実行することは、本来あるべきよりもかなり難しいように思われます。

私のコードはsrc/it / javaにあり、リソースはsrc / it / resourcesにあるため、私の場合は少し異なります。それらをMavenで構成すると、Eclipseはストーリーを問題なく実行します。問題はMavenにあります。

現在の私の問題は、実行時にmockito(または他のテスト依存関係)が表示されないことです(mvn-X)。実用的な例を編集してテストの依存関係を追加しても、それは含まれていません。

プラグインのxmlblob内にテストの依存関係を固定することで、それを機能させることができましたが、明らかにそのように繰り返したくありません。

ビルドファイルの関連部分(手動で指定された依存関係ハックなし)は次のとおりです。

<testResources>
    <testResource>
        <directory>src/test/resources</directory>
        <filtering>false</filtering>
        <includes>
            <include>**/*</include>
        </includes>
    </testResource>
    <testResource>
        <directory>src/it/resources</directory>
        <filtering>false</filtering>
        <includes>
            <include>**/*</include>
        </includes>
    </testResource>
</testResources>

..。

  <plugin>
    <groupId>org.jbehave</groupId>
    <artifactId>jbehave-maven-plugin</artifactId>
    <executions>
      <execution>
        <id>embeddable-stories</id>
        <phase>integration-test</phase>
        <configuration>
          <includes>
            <include>**/*Story.java</include>
          </includes>
          <ignoreFailureInStories>false</ignoreFailureInStories>
          <ignoreFailureInView>false</ignoreFailureInView>
          <scope>test</scope>
          <testSourceDirectory>src/it/java</testSourceDirectory>
        </configuration>
        <goals>
          <goal>run-stories-as-embeddables</goal>
        </goals>
      </execution>
    </executions>
  </plugin>

アイデア?

4

2 に答える 2

4

プラグインには、scopeデフォルトで に設定されているプロパティがあります。compileこれを に変更する必要があると思いますtestドキュメントを参照してください。

また、デフォルトである理由はここにありcompileます。

于 2012-06-20T12:23:29.660 に答える
2

jbehave maven プラグインのドキュメントによると、

JBehave Maven プラグインを使用する場合、POM 構成の残りの部分によっては、Apache log4j をプラグイン依存関係 (プロジェクト依存関係ではなく) として追加する必要がある場合があります (そのクラスをロードできない場合)。

同じ問題に直面していませんか?

于 2011-05-06T05:04:31.340 に答える