9

groovyプログラミング言語でJavaアプリケーションの統合テストを作成するためにgroovyを使用することを提案するいくつかの投稿(たとえばここ1 )を見ました。私は次のテクノロジーを使用してアプリケーションに取り組んでいます:Java 7、java EE 6、POSTGRESQL

私はグルービーが

  • Javaとの統合が簡単
  • コードをすばやく書く

しかし、ITに使用する特別な理由はありますか?コードベースに別のプログラミング言語を追加しても、人生は地獄になりませんか?写真に欠けているものがあると思いますので、よろしくお願いします。

4

2 に答える 2

3

私はすぐにあなたとまったく同じスタックでプロジェクトを開始しますが、Groovy はテストだけでなく、製品コードにも含まれます。

Groovy は簡単な言語であるため、コードベースに追加することに問題はありません。Haskell や Prolog など、Java にあまり似ていない言語を含める場合は、別の話になります。すでに Facelets、EL、CSS、HTML、Javascript が含まれています。別の言語を追加することのどの部分が悪いですか? :-)

IT テストで Groovy について取り上げる主なポイント:

  • アサーションとモック データを簡単に作成できます。
  • コードの簡潔さ;
  • スムーズな学習曲線;
  • Gebのようなブラウザ オートメーションを操作するための簡潔なコード。

Groovy のその他の忘れがちなもの:

  • XML/JSON を簡単に記述できます (たとえば、Web サービスのテストが必要な場合)。
  • 必要に応じて静的コンパイル。

私の最後の 2 つの会社には、本番コードで作業していないテスト チームがありましたが、すぐに Groovy でテストを書き始め、Groovy 言語を楽しんでいました。

于 2013-03-20T16:06:13.963 に答える
2

Groovy は Java に比べてテストを書くのに特に適しているので、読むべきだと思います。Groovy で Java でできないことは何もありませんが、多くの場合、途方もない労力がかかります。たとえば、Spock のようなものは、Java ではほとんど読めません。

それを可能にするのは多くの小さなことです。たとえば、Groovy の assert ステートメントからのアサーション エラーの出力を非常に優れたものにする power asserts があります。シームレスな統合により、言語の世界を調整するための余分なコードが不要になります。DSL 機能を使用すると、最小限の DSL を簡単に記述して定型コードを減らすことができます。これらはすべて、実際に何をどのようにテストするかを確認できるようにするためのものです。テストが失敗した場合、その部分を正確に理解する必要があり、テストの作成に費やす時間が短縮されるからです。

私がアドバイスできるのは、少し試してみることだけです。次に、それはあなたを納得させるかどうかのどちらかです。ケースが非常に単純な場合は、おそらく Java で十分です。テストがより複雑になれば、Groovy コードを理解しなければならないことは、ここでのハードルが小さくなる可能性があります。忘れてはならないのは、Java 開発者として、Groovy を適切に使用して適切な単体テストを作成するために、Groovy について深く理解している必要はないということです。

于 2013-03-20T16:04:27.623 に答える