Pregunta

Me gustaría integrar PHPUnit a mi marco. Con esto, quiero decir que tengo que inicializar un poco al principio, como configurar las cargas automáticas, antes de ejecutar las pruebas.

Me gustaría usar el corredor de prueba cli, y si lo entiendo correctamente, tengo que hacer una clase, que tenga un conjunto de funciones estáticas (), que devuelva una instancia de PHPUnit_Framework_TestSuite y agregue pruebas a este conjunto, como se indica en http://www.phpunit.de/manual/current/en /textui.html .

Hasta ahora se me ocurrió:

class MyTestFW {
    public static function suite() {
        // Do framework initialization here

        $suite = new PHPUnit_Framework_TestSuite();
        $suite->addTest(new SimpleTest());

        // Add more tests

        return $suite;
    }
}

SimpleTest es una clase de prueba muy básica, que extiende PHPUnit_Framework_TestCase. Cuando ejecuto & Quot; phpunit MyTestFW & Quot ;, siempre obtengo:

PHPUnit 3.3.16 by Sebastian Bergmann.

E

Time: 0 seconds

There was 1 error:

1) (SimpleTest)
RuntimeException: PHPUnit_Framework_TestCase::$name must not be NULL.

¿Podría alguien ayudarme un poco por favor?

¿Fue útil?

Solución

PHPUnit_Framework_TestCase::$name se configura en el constructor TestCase, por lo que puede intentar esto:

$suite->addTest(new SimpleTest('simpletest'));

edit1:

No conozco tu código, así que no sé si esto ayuda.
Lo que generalmente veo es esto (como un reemplazo de lo anterior, no además):

$suite->addTestSuite('SimpleTest');

edit2:

documentación de phpunit: Capítulo 7 - Organización Pruebas

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top