22

順番にテストを実行する必要があります。これが適切に文書化されている場所はどこにもありません。コマンドラインからこれを行うことをお勧めします。何かのようなもの

 mvn -Dtest=test1,test2,test3,test5 test

どうすればいいですか?

4

6 に答える 6

41

テストの実行順序を指定することはできません。

これを行うための回避策は、runOrderパラメーターをアルファベット順に設定することです。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <configuration>
        <runOrder>alphabetical</runOrder>
    </configuration>
</plugin>

次に、期待される順序を取得するために、テストの名前を変更する必要があります。

ただし、依存テストを行うことはお勧めできません。ユニットテストは最初でなければなりませ

于 2012-08-22T15:09:31.720 に答える
5

テストの順序が本当に必要な場合は、テスト間の依存関係を定義し、それに基づいて特定のテスト順序を定義できる JUnit の代わりにtestngを使用する必要があります。実際には、独立したパラダイムが機能しない時期であることを私は知っています.

于 2012-08-25T15:41:09.540 に答える
3

テスト順序を指定できるMaven Surefireプラグインがあります。

テストが相互に依存しているため、テストを順番に実行する必要がある場合は、そうしないことを強くお勧めします。各テストは独立していて、単独で実行できる必要があります。また、各テストが独立している場合、それらが実行される順序は問題ではありません。独立したテストがあるということは、テスト チェーン全体を再実行することなく、1 つのテストを繰り返し実行できることも意味します。これは大幅な時間の節約になります。

于 2012-08-22T15:32:51.383 に答える
3

単体テストを特定の順序で実行する必要がある場合は、テストの設計が不適切であるか、アプリの設計が不適切である可能性があります。単体テストは互いに独立している必要があります。

于 2012-08-22T15:40:22.850 に答える