Hay un par de opciones para el comando phpunit
que pueden ayudar a definir que prueba que debe y no se debe ejecutar:
$ phpunit --help
PHPUnit 3.4.0beta5 by Sebastian Bergmann.
Usage: phpunit [switches] UnitTest [UnitTest.php]
phpunit [switches] <directory>
...
--filter <pattern> Filter which tests to run.
--group ... Only runs tests from the specified group(s).
--exclude-group ... Exclude tests from the specified group(s).
--list-groups List available test groups.
...
Aquellos probablemente no permitirá especificar exactamente lo que quería ... Pero podrían ayudar.
Para más detalles, ver The Command-Line Test Runner
Sobre todo, me gusta la función de grupo: sólo tiene que utilizar una etiqueta @group
en el phpdoc de sus pruebas, para volver a agruparlos (por ejemplo, un grupo por "porción de funcionalidad"); y, después, puede usar las opciones --group
o --exclude-group
en la línea de comando para especificar qué pruebas deben o no ejecutarse.
En su caso, si no se puede modificar las pruebas, tal vez la opción --filter puede ayudar, dependiendo de cómo sus pruebas se nammed (es decir, si hay una manera de identificar a los que desea ejecutar):
--filter
sólo se ejecuta pruebas cuyo nombre coincide con el patrón dado. El patrón puede ser , ya sea el nombre de una prueba individual o una expresión regular que coincida con nombres de pruebas múltiples.
Otra solución, si no siempre está cambiando los "grupos" de pruebas para correr, podría ser el uso de una prueba de baño que sólo incluye las pruebas que desee ejecutar.
Por ejemplo, eche un vistazo a Composing a Test Suite Using XML Configuration.
La anotación de grupo funcionará muy bien. Gracias. –
De nada :-) Diviértete! –
He configurado '@group slow' en todas mis pruebas lentas y he usado un archivo' phpunit.xml', pero las excluyo de manera predeterminada. Si quiero incluirlos de nuevo, simplemente ejecuto 'phpunit --no-configuration --group slow'. – dave1010