Pergunta

Eu uso phpunit em um servidor de integração para executar todos os testes e se eu comando lançamento phpunit na linha de comando, recebo:

PHPUnit 3.2.18 by Sebastian Bergmann.
F..III..I......I.IIII...
Time: 6 seconds
There was 1 failure:

1) Warning(PHPUnit_Framework_Warning)
No tests found in class "TU".
FAILURES
Tests: 24, Failures: 1, Incomplete: 9.

Via apache, executando o mesmo arquivo de teste:

PHPUnit 3.2.18 by Sebastian Bergmann.
..III..I......I.IIII...
Time: 7 seconds

OK, but incomplete or skipped tests!
Tests: 23, Incomplete: 9.

classe Meu TU basta incluir todas as classes de testes com um $suite->addTestFile(), e que têm duas funções estáticas: main() que executar todos os testes, e suite() que voltar a suíte testes. Mas a classe TU não está no arquivo primário dado como parâmetro para comando phpunit, é uma classe genérica wich verificar arquivos e lista todos os testes classe.

Eu tenho o mesmo problema com uma classe que se estende PHPUnit_Framework_TestCase para adicionar assert específico (), que não está incluído via $ suite-> addTestFile (), mas apenas por um require ().

Como posso corrigir isso? Agradecemos antecipadamente

Saudações Cédric

Foi útil?

Solução

Para a classe wich estende PHPUnit_Framework_TestCase, deve ser abstrato, e o aviso desaparecer. Para o primeiro problema, parece que é um bug.

Outras dicas

Parece que você está usando dois arquivos php.ini diferentes para linha de comando e Apache.

Na maioria dos sistemas unixoid, correndo

diff /etc/php*/*/php.ini

deve mostrar-lhe as diferenças.

Em sistemas Windows, usar a busca para encontrar arquivos nomeados php.ini. Na maioria dos casos, você só pode copiar o arquivo de configuração do Apache para o CLI.

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