テストフレームワークを選択しようとした場合、キュウリとショウダの間でどのように決定しますか?
これら2つのフレームワークの主な違いは何ですか?
テストフレームワークを選択しようとした場合、キュウリとショウダの間でどのように決定しますか?
これら2つのフレームワークの主な違いは何ですか?
誰もが指摘しているように、キュウリとショルダーはかなり異なる目的を持っています。Cucumberは、「10,000フィートからの眺め」のテストフレームワークと考えることができます。幅広い機能または特定のユーザーインタラクションを定義し、すべてが連携して機能することを確認します。Shouldaは単体テスト用です。特定のモデルを選択し、その個々のピースの機能の厄介な部分をすべて徹底的にテストします。
通常、これらの種類のフレームワークを組み合わせて使用することをお勧めします。たとえば、大まかな高レベルのテストのほとんどはCucumberで記述できますが、システムに特に複雑または不透明なコードがある場合は、ShouldaまたはRSpecを使用してドリルダウンして詳細をテストできます。
彼らは完全に異なる目的を持っています。Shouldaは、Test::Unitの上に構築されたユニットテスト拡張機能です。
Cucumberは、アサーションを実行するためにTest :: Unit / RSpec/Whateverを使用できる受け入れ/機能テストフレームワークです。
たとえば、ShouldaはRSpecと直接比較できます。
キュウリの「テストエンジン」としてShouldaを実際に使用できると言っている人は他にいません。
キュウリは、検収試験を対象としています。Shouldaはユニットテストフレームワークです。
Shouldaは、Test::Unit
テストマクロ、アサーション、およびヘルパーで構成されるフレームワークの拡張です。ショルダーはユニットテストを書くためのより良い方法です。
RSpecの「ストーリーランナー」を書き直したCucumberは、ビヘイビア駆動開発用のツールです。これにより、ビジネスで読み取り可能なドメイン固有言語で実行可能仕様を記述できます。キュウリは、より多くの検収試験ツールです。
したがって、キュウリとShouldaの目的は異なります(ShouldaをBDDに使用できる場合でも)。