PHPSPEC: LA HERRAMIENTA DE BDD PARA DESARROLLADORES PHP
PHPSpec es un framework de especificación (spec) para PHP que promueve el BDD, Behavior Driven Development y se integra con el Spec Driven Development.Fue creado por Marcello Duarte y el equipo de SensioLabs, y se mantiene activo en la comunidad.
A diferencia de PHPUnit, que es más orientado a pruebas unitarias tradicionales, PHPSpec está pensado para describir el comportamiento esperado de las clases y objetos de forma natural y legible, casi como si se estuviera escribiendo documentación ejecutable. PHPSpec ayuda a escribir código más limpio, con mejor diseño y más mantenible.
Ventajas de Usar PHPSpec
- Legibilidad extrema: Los tests (llamados specs) se leen como prosa inglesa.
- Diseño guiado por comportamiento: Te obliga a pensar primero en la interfaz pública de tus clases.
- Generación de código: Puede generar automáticamente el código esqueleto de tus clases a partir de las especificaciones.
- Mocks integrados y potentes: Usar Prophet, un excelente mocking library.
- Enfoque en OOP: Ideal para código bien diseñado y orientado a objetos.
- Integración: Funciona perfectamente junto a PHPUnit (muchos proyectos usan ambos).
Instalación
La forma más sencilla es mediante Composer:composer require --dev phpspec/phpspec