7

いくつかの ant ビルド スクリプトを gradle に移行しており、途中で問題を診断しています。発生した問題の 1 つは、CI サーバー (gradle を実行しているジェンキンス) で時々テストが失敗することです。失敗しているテストの 1 つが一部のライブラリ コードでスレッド ローカル ストレージを使用しているため、この問題はテストの実行順序に関連していると考えられます。

壊れたテストを修正する前に、ローカルで問題を再現できるようにしたいと考えています。でも。gradle は常に動作する順序でテストを実行するため、ローカルで問題を再現することはできません。

では、テスト クラス Y の前にテスト クラス X を実行するように gradle を強制する方法はありますか? テストは同じ JVM で実行する必要があります。

重要な場合、テストは JUnit テストです。

4

3 に答える 3

2

gradle フォーラムでの Peter の回答によると、これは不可能です。

http://forums.gradle.org/gradle/topics/can_gradle_run_two_tests_in_a_specific_desired_order_in_the_same_jvm?utm_content=reply_link&utm_medium=email&utm_source=reply_notification#reply_13187620

別の方法は、テスト スイートを使用することです。

于 2013-10-25T15:09:14.523 に答える
2

testNG (Junit の代替であり、gradle でもサポートされています) を使用すると、テスト順序を制御することもできます。詳細については、この投稿を参照してください。

于 2013-12-05T23:10:00.507 に答える