【发布时间】:2010-06-25 18:49:27
【问题描述】:
RSPec 是一个很棒的 ruby 测试框架(用于测试驱动开发), 任何人都知道类似 rspec 但是对于 PHP?
【问题讨论】:
-
Kahlan 是更接近现有的实现(注意:我是它的创建者)。
标签: php ruby testing rspec phpunit
RSPec 是一个很棒的 ruby 测试框架(用于测试驱动开发), 任何人都知道类似 rspec 但是对于 PHP?
【问题讨论】:
标签: php ruby testing rspec phpunit
PHPSpec 是一个行为驱动的 php 开发框架。不过我自己还没用过,所以不能具体评论。
【讨论】:
Behat!建立在 Symfony 2 组件之上。从语法上讲,不如 Ruby 实现好,但仍能获得 BDD 的好处。
我自己偶然发现了它,还没有使用它。乍一看,它似乎使用了 PHP 5.3 新增的闭包(它需要像 RSpec/Cucumber 一样工作)。
【讨论】:
PHPUnit 是 PHP 中单元测试的事实标准。
它可以在有限的范围内做到BD Testing:
PHPUnit_Extensions_Story_TestCase 类添加了一个故事框架,有助于为行为驱动开发定义领域特定语言。在场景中,given()、when() 和 then() 分别代表一个步骤。 and() 与上一步相同。以下方法在 PHPUnit_Extensions_Story_TestCase 中声明为抽象,需要实现:
runGiven(&$world, $action, $arguments) ... runWhen(&$world, $action, $arguments) ... runThen(&$world, $action, $arguments) ...
编辑:An more sophisticated alternative might be Cucumber 和 Behat
【讨论】:
【讨论】:
如果您只对测试的输出感兴趣,您可以使用phpunit-progress,这会使您的测试结果看起来与 RSpecs 的结果完全一样。
【讨论】:
Selenium 是另一个值得一提的。
【讨论】: