JBehave は実際には Cucumber に相当する Java であるのに対し、Cucumber は Ruby に基づいているとどこかで読んだことがあります。
誰かがそれらの違いを説明してリンクを提供できますか?
JBehave と Cucumber はまったく異なるフレームワークですが、受け入れテストという同じ目的を意図しています。それらは、ストーリー (JBehave) または機能 (Cucumber) に基づいています。機能は、特定のプロジェクト関係者の視点から表現されたストーリーのコレクションです。テストでは、通常は正規表現マッチングを介してストーリーを参照しています。
JBehave は純粋な Java フレームワークですが、Cucumber は Ruby に基づいています。どちらも非常に成熟したフレームワークです。Maven のCuke4Duke Maven プラグインを介して Java から Cucumber を使用できますが、内部で Ruby を使用し続けているため、言語の不一致が残っており、この言語とそのインフラストラクチャ (いわゆる「gems」) をマシンにインストールする必要があります。テストを実行します。これは脆弱な場合があり、言語の不一致によりデバッグが複雑になり、テストのパフォーマンスが妨げられます。現在、Cucumber-JVMと呼ばれる Cucumber の純粋な Java 実装があります。2011 年 12 月現在、まだリリースされていませんが、完全に使用可能です (編集:バージョン 1.0.0 は2012 年 3 月 27 日にリリースされました)。. この新しいフレームワークは JBehave と非常によく似ており、どちらもネイティブ JUnit サポートを備えています。
以下は、Cucumber-JVM と JBehave の比較です。
類似点:
JBehave の長所と短所:
Cucumber-JVM の長所と短所:
Java プロジェクトに参加している場合は、JBehave (優れたドキュメントを探している場合) または Cucumber-JVM (代わりに機能やストーリーのサポートが重要な場合) のいずれかをお勧めします。
私は両方のフレームワークを試し、Cucumber-JVM を選びました。
いいえ、実際には、cucumber に相当する Java はCucumber-JVMです。これら 2 つの有名な BDD フレームワークの違いを理解するには、このリンクも確認する必要がある場合があります。