質問

POMがパッケージングタイプ「POM」に設定されているときに、ユニットテストを実行する問題がいくつかあります。最初はこのプロジェクトに必要な目標はないと言っていたので、Maven-Surefire-Pluginをpom.xmlに追加して、テストフェーズをMaven-Surefire-Pluginテストの目標に結合しました。

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.9</version>
            <executions>
                <execution>
                    <phase>test</phase>
                    <goals>
                        <goal>test</goal>
                    </goals>
                </execution>
            </executions>
        </plugin> 

これで、SureFireプラグインが実行されていますが、実行するテストはないと書かれています。パッケージタイプをJARに変更してMVNテストを実行すると、テストファイルが選択されます。

MVNテスト-Xを実行すると、「testSourcedirectory = c: dev dsl src test java」と表示されます。これは正しい場所です。テストの場所は、パッケージングタイプの「POM」の「jar」とは異なりますか?追加してみました

            <configuration>
                <testSourceDirectory>src/test/java</testSourceDirectory>
            </configuration>

SureFireプラグインには、まったく役に立ちませんでした。

役に立ちましたか?

解決

デイブがコメントしたように、あなたが使用している場合 pom パッケージング、次のライフサイクル目標のみを実行します。参照する これ 関連するMavenドキュメント。

  • パッケージ
  • インストール
  • 配備

他の目標を実行するために必要な場合は、明示的に指定する必要があります。例えば、

mvn clean compiler:testCompile surefire:test
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top