unittest unitarias unit tests test run pruebas hacer coverage como phpunit ignore testcase

phpunit - unitarias - test artisan



Laravel 4 No se encontraron pruebas en TestCase (5)

Estoy teniendo algunos problemas con phpunit. Cuando ejecuto una prueba, phpunit me da estas advertencias:

1) Advertencia No se encontraron pruebas en la clase "Illuminate / Foundation / Testing / TestCase".

2) Advertencia No se encontraron pruebas en la clase "TestCase".

Pero me gustaría ignorar estos archivos, para que phpunit no intente ejecutar pruebas desde ellos.

¿Como hacer eso?


Esperemos que ya hayas encontrado la respuesta, pero si no la tienes, esto podría ayudar:

Hmm - asegúrese de que los nombres de archivo y clase coincidan. Por ejemplo, ninguna clase FooTest con un nombre de archivo de BarTest.php.

Además, ¿está seguro de que tiene un archivo * Test.php dentro del directorio app / tests?

[...]

Eso fue todo, es decir, una de mis pruebas tuvo un error tipográfico en el nombre de archivo vs nombre de clase. Es extraño que el error tipográfico emita una advertencia en las clases de TestCase y en lugar de marcar la clase que realmente lo causó.

Desde: https://laracasts.com/forum/?p=83-warnings-for-testcase-illuminate-foundation-testing-testcase/0

Básicamente, asegúrate de que tus nombres de archivo y clase coinciden. Me estaba golpeando la cabeza en este también.


Para mí, el problema era que el nombre de la clase no coincidía con el nombre del archivo, por lo que una clase definida como

class ExampleTest {

no fue nombrado ExampleTest.php.

Si hay ciertos archivos de prueba que querría ignorar, vaya al archivo phpunit.xml y adentro

<testsuite name="Application Test Suite"> <directory></directory> </testsuite>

reemplace las etiquetas de directorio con etiquetas y especifique el archivo de prueba específico que desea usar.


Para mí, tuve un error de convención. La solución fue cambiar el nombre de la clase y el archivo de TestFoo a FooTest .


También me enfrentaba al mismo problema. He comprobado que mi nombre de archivo y mi clase son los mismos que AuthTest.php y AuthTest respectivamente.

Pero todavía recibía la misma advertencia, tal vez porque he cambiado el nombre de ExampleTest.php a AuthTest.php .

De todos modos, he eliminado el archivo anterior y he usado el php artisan make:test AuthTest y funcionó.


Una solución adicional podría ser hacer que la clase TestCase sea abstracta. Al hacerlo, PHPUnit no intentará encontrar ninguna prueba en él.

abstract class TestCase {