7

Maven - Surefire - Eclipse - JUnit に関する初心者の質問

以下のように、いくつかの追加の JVM 引数を渡すように、プロジェクトの pom ファイルで maven-surefire-plugin を構成しました。

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>${maven.surefire.plugin.version}</version>
            <configuration>
                <argLine>-d64 -Xms128m -Xmx4096m -XX:PermSize=512m -Duser.timezone=UTC -XX:-UseSplitVerifier</argLine>
            </configuration>
        </plugin>

このプロジェクトのテスト ケースを Eclipse から Run As -> JUnit Test として実行すると、クラスパスが正しく設定されていても、argLine で指定された追加の引数が呼び出しに含まれません。関連する の下に引数を手動で入力する必要がありますDebug Configurations。クラスパスにテストスコープのjarを配置する必要があることをJUnitがどのように認識しているか、EclipseのJUnitツールがM2E経由でMavenを認識していることを意味することをよく理解していませんか? もしそうなら、argLine も読み取れるようにするにはどうすればよいでしょうか。これは非常に具体的に聞こえると思いますが、他の人は同様の状況でどのように対処していますか?

前もって感謝します!

4

1 に答える 1

9

Eclipse JUnit Launcher (choose Run As -> JUnit Test) は独立したテスト ランナーであり、事前に定義された独自のビルドと実行ライフ サイクルを持ち、Maven とは関係ありません。pom を魔法のようにピックアップして確実な構成を読み取り、それらを使用して駆動することはありません。テスト実行中。

プロジェクトが既存の Maven プロジェクトとしてインポートされている場合は、Maven (を選択Run as -> Maven test) を使用して、確実な構成を選択して使用する JUnit テストを起動します。これはコマンドラインから実行するのとまったく同じmvn testです。コンソールに実行ログを出力するだけで、赤と緑の素敵な JUnit UI ウィンドウを使用できません。

これが理にかなっていることを願っています。

于 2012-09-12T22:50:39.013 に答える