11

私はしばらくこれを見ていませんが、正しく思い出せば、antとmavenの両方がユニットテストのためにJUnit 3に依存しています(maven 2.09の時点で、デフォルトのPOMファイルにはまだJUnit 3.81があります)。

最新で最高のものを使用する代わりに、JUnit 3に固執することはまだ意味がありますか?私が行方不明になっているかもしれない正当な理由はありますか?

4

6 に答える 6

9

3.x バージョンに固執する理由がわかりません。ほとんどのツールは、しばらくの間 4.x と互換性があります。私が 3.x に固執する唯一の理由は、Java 1.4 環境にあるためです (他に方法がないため)。

ちなみに、maven は 2.1 で Java 5 に切り替えているため、junit 4.x を提案する可能性があります。

于 2008-12-01T17:58:35.413 に答える
8

JUnit 4 には、3.x よりも多くの利点があります。最も重要なのは、TestCase を拡張する必要がなくなり、テスト メソッドを「test」で始める必要がなくなったことです。現在はすべて注釈ベースです。また、Hamcrest マッチャーを追加することもできます。これにより、テスト アサーションを記述するための非常に優れた表現力豊かな方法が得られます。

ただし、Java 1.5 より前のプロジェクトに行き詰まっている場合は、JUnit 3.x に固執する必要があるかもしれません。

于 2008-12-01T16:19:48.203 に答える
6

JUnit 4.x にはいくつかの理由と反対の理由があります。

長所:

  • 注釈は理解しやすく、読みやすさを向上させます。
  • テストを無視する方が簡単です。
  • メソッドには好きな名前を付けることができます。

短所:

  • Java 5 (注釈) が必要です。
  • おそらく移行が必要です(?)。

JUnit 4 の方が優れているため、JUnit 4 を使用しますが、それは私の個人的な意見です。

于 2008-12-02T08:59:40.820 に答える
4

Ant と Maven はどちらも JUnit 4 テストを問題なく実行できます。JUnit 3 を使用する唯一の理由は、レガシー システムです。Java 5 より前の JDK を使用せざるを得ないか、または JUnit 3 に依存し、JUnit 4 をサポートしない広範なツールを使用しています。

于 2008-12-02T09:04:17.957 に答える
4

Ant は JUnit 3 で応答しません。

新しい JUnit に移行することをお勧めします。単純な理由は、JUnit4 のみのツールやサンプルがますます増えるという単純な理由からです。JUnit3 に固執するということは、縮小するエコシステムに住むことを意味します。

于 2008-12-01T16:59:52.973 に答える
3

MavenにはJUnit3.81への明示的なバインドはありません。必要な任意のバージョンのjunitに切り替えることができます。Java 5を実行している場合は、少なくとも4.4に切り替える必要があると思います。Spring2.5は4.5と互換性がありません。

于 2008-12-01T13:56:50.130 に答える