web-dev-qa-db-ja.com

FitNesseは製品の品​​質とコラボレーションを改善しますか?

FitNesse という名前のツールについて聞いたことがあります。このツールは、開発、テスト、および製品グループ間のより良いコラボレーションを促進することになっています。

それであなたの経験は何ですか?それは本当にプログラムの品質を向上させますか?それを使用することに何か欠点はありますか?

10
RonK

FitNesseは興味深いツールです。うまくいく場合もあれば、うまくいかない場合もあると思います。テーブル駆動型テストは、ビジネスルールなどのテストに非常に適しています。製品グループがExcelを使用して要件を伝達することに慣れている場合、FitNesseは非常に適しています。

私が働いている場所では、実際には「ビジネスのような」環境ではありませんが、いくつかの場所でFitNesseを使用して、いくつかの外部コマンドプロトコルの「実行可能ドキュメント」を作成しています。ドキュメントとテストを1つのドキュメントにまとめることで、両方が適切に維持されるようになります。

FitNesseについて私が本当に気に入っていることの1つは、複数の言語のバインディングです。このため、新しい言語を使用した書き直しのコンテキストで、テストをそのまま使用できます。明らかに一般的なシナリオではありませんが、興味深いシナリオです。フィクスチャコードは、コードとテストを分離したままにすることができる「シアリングレイヤー」として機能します。

おそらく、FitNesseで私が目にする最大の弱点は、テストスイートを維持するためのツール(リファクタリング、一括編集など)がないことです。しかし、人々はそれらに取り組んでいます。

FitNesseを試すことにした場合は、Rick Mugridge( http://www.rimuresearch.com )とGojko Adzic( http:/)が手に入れることができるものをすべて読むことを強くお勧めします。 /gojko.net/ および http://fitnesse.info/ 、彼らの本を含む。FitNesseを使用して、保守不可能でコミュニケーションの取れない「スクリプト」テストを作成するのは非常に簡単です。正しい道に。

5
Randy Coulman

私たちはそれを使ってWebサービスをテストしており、それでうまくいっています。

それは私たちを助けました:

  • 新しいデータベースタイプを追加します。 SQL ServerのサポートをWebサービスに追加した後、適合テストを実行するだけで、結果はOracleとまったく同じになります。問題の修正に大いに役立ちました。
  • 大規模なリファクタリング中に何も壊れないようにする。すべてのWebサービスを非同期に更新しました。 Fitnesseは、機能しなくなったいくつかの国境事件を見つけるのに役立ちました。
  • バックワードの互換性をテストします。何を変更しても、Fitnessテストに違反しないでください。
  • 古い/新しいデータベースでのテスト。古いデータベースをお持ちのお客様は、引き続きWebサービスを使用できます。 Fitnesseは、開発者が古いDBにないフィールドを要求したときに発生する可能性があるWebサービスを中断しなかったことを確認します。

これをすべて行う他のツールがありますが、Fitnesseが私たちのために働いています。

2
Carra