Actualización PHPUnit 13.2.0: Control, Aserciones y Reportes Mejorados
Tipo de Lanzamiento: minor | Fecha: 2026-06-05 | Categoría: Test Automation
Key Changes
- Ejecución y Control de Pruebas: PHPUnit 13.2.0 mejora significativamente el control de la ejecución de pruebas. Nuevas opciones CLI como
--run-test-id <test-id>permiten ejecutar una sola prueba identificada con precisión, mientras que--list-test-idsayuda a descubrir los IDs de pruebas disponibles. La opción--filtertambién se ha mejorado para soportar esta sintaxis de ID. Para gestionar las ejecuciones de pruebas, el atributoexecutionOrderen la configuración XML ahora ofrece mayor flexibilidad, incluyendo la ordenación por duración descendente para identificar rápidamente cuellos de botella de rendimiento. Además, nuevos umbrales para--stop-on-defect,--stop-on-errory opciones similares proporcionan un control más fino sobre cuándo un conjunto de pruebas debe detenerse, mejorando la eficiencia en los pipelines de CI/CD. La capacidad de manejar interrupciones y mostrar los resultados actuales de las pruebas (#4201) también mejora la retroalimentación durante ejecuciones de pruebas largas. - Aserciones e Informes Mejorados: Los testers ahora cuentan con los métodos
assertStringEqualsIgnoringWhitespace()yassertStringContainsIgnoringWhitespace(), cruciales para comparar strings multilínea o salidas donde las variaciones de espacios en blanco son irrelevantes. Los mensajes de fallo para aserciones básicas (IsTrue,IsFalse,IsNull) son ahora más limpios, evitando volcados verbosos de objetos y arrays, lo que simplifica la depuración. La capacidad de informes se ha mejorado significativamente con la opción CLI--compactpara una salida de consola concisa. El formato Open Test Reporting XML se enriquece con el uso de recursos por prueba y por suite de pruebas (tiempo, memoria, pico de memoria), recuentos de aserciones, detalles estructurados de fallos de comparación (esperado, actual, diff) e incluso la semilla de orden aleatorio cuando las pruebas se aleatorizan, proporcionando información más profunda para el análisis. - Calidad de Código y Cobertura: La actualización introduce una opción (
#4501) para marcar pruebas como “risky” si no contribuyen a la cobertura de código, fomentando pruebas más significativas y efectivas. Las pruebas PHPT también se marcan como “risky” cuando su sección--SKIPIF--carece de efectos secundarios de salida estándar (#6000). Para un análisis de cobertura más granular, la configuración para la cobertura de ramas ahora se puede separar de la cobertura de rutas (#6602), permitiendo a los equipos de QA enfocarse en aspectos específicos de la ejecución del código. - Usabilidad y Configuración: Una nueva opción CLI
--validate-configurationayuda a asegurar que los archivos de configuración XML estén correctamente configurados, previniendo errores en tiempo de ejecución debido a configuraciones mal formadas. Ahora se emiten advertencias para opciones CLI conflictivas (#6346), guiando a los usuarios hacia un uso correcto. Adicionalmente, la capacidad de configurar las líneas de contexto de diff (#6567) mejora la legibilidad de los fallos de comparación, y la opción--disable-coverage-targeting(#6598) ofrece más control sobre la recolección de cobertura.
Impact for QA Teams
Estas actualizaciones proporcionan a los equipos de QA un control más granular sobre la ejecución de pruebas y capacidades de informe significativamente mejoradas. Las nuevas aserciones y características de cobertura ayudan a escribir pruebas más efectivas e identificar problemas potenciales más rápidamente, lo que lleva a una depuración más eficiente y lanzamientos de mayor calidad.
Para el changelog completo, consulte las notas de lanzamiento oficiales de PHPUnit.
