2010-06-25 15 views
14

RSPec es un excelente marco de prueba de ruby ​​(para el desarrollo impulsado por pruebas), alguien sabe algo así como rspec pero, para PHP?¿Alguien sabe algo como RSPec para PHP?

+0

[Kahlan] (https://github.com/kahlan/kahlan) es una implementación más cerca existente (nota: No soy su creador). – Jails

Respuesta

3

PHPUnit es el estándar de facto para UnitTesting en PHP.
Se puede hacer BD Testing de forma limitada:

La clase PHPUnit_Extensions_Story_TestCase añade un marco de historia que facilita el establecimiento de definición de un lenguaje de dominio específico para el desarrollo del comportamiento-Driven. Dentro de un escenario, given(), when() y luego() representan cada uno un paso. y() es del mismo tipo que el paso anterior. Los siguientes métodos se declaran resumen en PHPUnit_Extensions_Story_TestCase y necesitan ser implementadas:

runGiven(&$world, $action, $arguments) 
... 

runWhen(&$world, $action, $arguments) 
... 

runThen(&$world, $action, $arguments) 
... 

Editar: An more sophisticated alternative might be Cucumber con Behat

16

PHPSpec es un marco de desarrollo impulsado por el comportamiento para php. No lo he usado todavía, así que no puedo comentarlo específicamente.

+3

Este enlace funciona: http://www.phpspec.net/ – NicoGranelli

-2

Selenium es otro que vale la pena mencionar aquí.

+0

Selenium es para la automatización de navegadores. Si bien puede * usar * esto al escribir varias pruebas, no es un marco de prueba como lo está haciendo la pregunta. – Nate

5

Behat! Construido sobre los componentes de Symfony 2. Sintácticamente, no es tan agradable como la implementación de Ruby, pero aún así obtiene los beneficios de BDD.

Me tropecé con él y no lo he usado todavía. De un vistazo, parece que está usando cierres (que tendría que hacer para funcionar como RSpec/Cucumber) que es una adición de PHP 5.3.

http://behat.org/

+3

Behat es un clon PHP de Pepino, no RSpec. Esta herramienta es para pruebas de comportamiento en el nivel de integración (también conocido como prueba de aceptación), no para pruebas de unidades como RSpec. –

0

Si sólo está intrested en la salida de las pruebas, se puede usar phpunit-progress lo que hace que sus resultados de las pruebas son exactamente iguales resultados RSpecs'.

0

Bee es muy similar, todavía es muy joven, pero lo uso para algunos proyectos.

Espero que esto ayude ...

Cuestiones relacionadas