27

誤解しないでください。どちらのプロジェクトも素晴らしいと思います。

しかし、php と ruby​​ の両方の開発者として、言語の壁の可能性以外に、説得力のある理由があるのだろうかと思います。phpまたはいくつかの php フレームワークを使用している場合でも、BDDに( cuke4phpを使用して) CucumberではなくBehatを選択するのはなぜですか。

4

3 に答える 3

76

私は Behat の開発者です。

Cucumber のカスタマイズではなく Behat を開発した理由:

  1. スピード。Ruby コードから PHP をブートストラップ/実行する簡単な方法はありません。これは、ワイヤ/プロキシなどを実装する必要があることを意味し、テストが非常に遅くなります。遅いテストはテストではなく、顧客のお金を食いつぶすコードにすぎません。
  2. 拡張性。Ruby を本当に知っている PHP 開発者はほとんどいません。多くの人が理解していない、使いにくいツールです。Cucumber 用に記述されたすべての例は Ruby コードであり、Cucumber のソースを見ることさえできません。たとえば、Ruby を知らないからです。タクシーが必要なときに潜水艦を買うようなものです。

機能に関しては、Behat と Cucumber はほとんど同じです (これを達成するために一生懸命努力しました)。しかし、PHP 開発者の観点から見た速度/拡張性/ロジックの点では、高速でクリーンなネイティブ PHP ツールであるため、Behat の方が優れています。Behat は Cucumber の移植版ではありません。最初に考えられるように、Behat は完全に PHP 5.3 でゼロから構築されています。Behat は入力の読み取り (機能) と出力の書式設定 (フォーマッター) で Cucumber をシミュレートしようとしていますが、Cucumber の移植ではありません (PHP には Ruby 構文の構造はありません)。

于 2011-02-09T16:29:23.163 に答える