Cuke4Nuke と SpecFlow のどちらを使用するかを決定しようとしています。それぞれの長所/短所は何ですか? どちらが優れているか、その理由についての意見。
ありがとう!
(私はSpecFlowに携わっているので偏見があるかもしれませんが、ここで私の考えを...)
Cuke4Nuke は Cucumber に非常に近いです。これにより、多くの利点が約束されます。
ただし、これにはいくつかの潜在的な欠点もあります。
SpecFlow は Cucumber とは別のプロジェクトです。できる限り Cucumber に近づけようとしますが、ギャップがあり、ギャップがあります。言語レベルでの互換性を向上させるために、Cucumber と同じパーサーを使用する計画があります。
SpecFlow は、次の利点を提供しようとします。
SpecFlow の欠点として、私は現在見ています:
jbandi は良い要約を提供します。私はほぼ同じ方法で質問に答えます(もちろん、偏見の反対の免責事項があります)。
Cuke4Nuke の目標は、.NET での Cucumber との完全な互換性を保ちながら、Cucumber コードの複製をできるだけ少なくすることです。したがって、あなたが強調したいくつかのトレードオフ (Ruby への依存など) は、ツールに固有のものです。言語とフォーマッタのサポートのバグや限定的なデバッグ サポートなど、その他の問題は一時的な問題であり、将来のバージョンでは解消される予定です。
Cuke4Nuke が Cucumber のように機能しないといういくつかの問題に遭遇しました。しかし、私は主に英語で仕事をしているので、通常の仕事では言語関連の問題は見られません。修正できるように、これらの問題を再現する手順を歓迎します。(ここではなく、Cuke4Nuke の問題リストを投稿してください。)
別の非常に偏った意見: StoryQを試してみてください:)
StoryQ テストは実際にはコードであるため、リファクタリング / IDE サポートが大幅に向上し、既存の単体テスト ランナーに組み込まれるため、CI は簡単です。
プレーンテキストの機能をチェックインするか、コンパイル可能なコードをチェックインするかは、おそらく好みの問題です。しかし、私たちにとっては、ナラティブ メソッドの名前を変更して、すべてのストーリーを自分自身で更新できるようになったことは本当に素晴らしいことでした。
プレーンテキストのシナリオにすでに投資している場合や、ビジネス パーソンにキーボードを提供したい場合は、プレーン テキストのシナリオを StoryQ コードに変換する GUI が実際に提供されています。シンプルな形のインテリセンスさえあります!
BDD への超軽量のエントリ ポイントが必要な場合は、試してみてください :)
リチャードから、彼はCuke4Nukeを廃止するつもりであり、Cuk4Nuke機能の一部をSpecFlowに移動することをサポートしていることを理解しています。したがって、明確な答えはSpecFlowです。
別の偏った反応: StorEvilは他のすべての .NET BDD ツールを食べます。
利点: StorEvil には独自のコマンドライン ランナーがあり、優れたレポート (Spark ビュー エンジンを使用) があり、最高のプレーンテキスト ->C# 変換および実行エンジンがあります。
また、他のソリューションよりも 100% 悪意があります。
短所: StorEvil は他の人間の言語 (英語を除く) を完全にはサポートしていません。StorEvil の Visual Studio 統合は、まだ他のツールほど優れていません。監視しないと、StorEvil が冷蔵庫のビールを全部飲み干してしまいます。
私はCuke4Nukeから始めましたが、その後SpecFlowに亡命しました(申し訳ありませんがRichard;-)
私がその移行を行う主な理由は次のとおりです。
Specflow / Cucumber/Cuke4Nukeの世界で私がもっと好きなものにはいくつかの問題があります。
全体として、どちらもソフトウェアの作成方法を改善する可能性があります。