Pergunta

Eu gostaria de integrar o PHPUnit para o meu quadro. Por isso, quero dizer que eu tenho que fazer alguma inicializar no início, como a criação de autoloads, antes de eu executar os testes.

Eu gostaria de usar o corredor de teste cli, e se eu entendi, eu tenho que fazer uma classe, que tem um conjunto de função estática (), que retorna uma instância de PHPUnit_Framework_TestSuite, e adicionar testes para esta suite, como observado na http://www.phpunit.de/manual/current/en /textui.html .

Até agora eu vim com:

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 é uma classe de teste muito básico, que se estende PHPUnit_Framework_TestCase. Quando eu executo "phpunit MyTestFW", eu sempre chegar:

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.

alguém poderia me ajudar um pouco por favor?

Foi útil?

Solução

PHPUnit_Framework_TestCase::$name fica definido no construtor TestCase, então você pode tentar o seguinte:

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

edit1:

Eu não sei o seu código, então eu não sei se isso ajuda.
O que eu costumo ver é isso (como um substituto do exposto, não adição):

$suite->addTestSuite('SimpleTest');

edit2:

phpunit documentação: Capítulo 7 - Organizador testes

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top