不要误会我的意思。我认为这两个项目都很棒。
但作为 php 和 ruby 开发人员,我想知道是否有任何令人信服的理由,除了可能的语言障碍,为什么会选择 Behat在 Cucumber (与 cuke4php )为 BDD即使在使用 php 或某些 php 框架时也是如此。
最佳答案
我是一名 Behat 开发人员。
为什么我开发 Behat 而不是 Cucumber 定制:
- 速度。没有简单的方法可以从 Ruby 代码引导/运行 PHP。这意味着您需要实现电线/代理和其他东西,这会使您的测试变得异常缓慢。较慢的测试不是测试,它只是吞噬客户资金的代码。
- 可扩展性。真正了解 Ruby 的 PHP 开发人员很少。这是一个很难使用的工具,很多人不明白!为 Cucumber 编写的所有示例都是 Ruby 代码,您甚至无法查看 Cucumber 源代码,因为假设您不了解 Ruby。这就像在您只需要出租车时购买一艘潜艇。
在功能方面,Behat 和 Cucumber 几乎相同(我一直在努力实现这一点)。但是从 PHP 开发人员的角度来看,在速度/可扩展性/逻辑方面 - Behat 更好,因为它是一个快速且干净的原生 PHP 工具。 Behat 不是 Cucumber 端口,正如您可能首先想到的那样,它完全是基于 PHP 5.3 构建的。 Behat 正在尝试使用其输入读取(功能)和输出格式(格式化程序)来模拟 Cucumber,但它不是 Cucumber 端口(PHP 中没有 Ruby 语法结构)。
关于php - 在 PHP 中对 Cucumber 进行 Behat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4945399/