Estou lutando para executar um único método de teste nomeado testSaveAndDropno arquivo escalation/EscalationGroupTest.phpcom phpunit. Eu tentei as seguintes combinações: phpunit EscalationGroupTest escalation/EscalationGroupTest.php --filter=escalation/EscalationGroupTest.php::testSaveAndDrop phpunit EscalationGroupTest escalation/EscalationGroupTest.php --filter=EscalationGroupTest.php::testSaveAndDrop phpunit EscalationGroupTest escalation/EscalationGroupTest.php --filter=EscalationGroupTest::testSaveAndDrop phpunit EscalationGroupTest escalation/EscalationGroupTest.php --filter=testSaveAndDrop Em cada caso, todos os métodos de teste no arquivo escalation/EscalationGroupTest.phpsão executados. Como selecionar apenas …
Eu achei a discussão em Você testa o método privado informativo. Eu decidi que, em algumas classes, quero ter métodos protegidos, mas testá-los. Alguns desses métodos são estáticos e curtos. Como a maioria dos métodos públicos os utiliza, provavelmente poderei remover os testes com segurança mais tarde. Mas, para começar …
Ao executar um teste PHPUnit, gostaria de poder despejar a saída para poder depurar uma ou duas coisas. Eu tentei o seguinte (semelhante ao exemplo do Manual do PHPUnit ); class theTest extends PHPUnit_Framework_TestCase { /** * @outputBuffering disabled */ public function testOutput() { print_r("Hello World"); print "Ping"; echo "Pong"; …
Como testar os métodos concretos de uma classe abstrata com PHPUnit? Eu esperaria que eu tivesse que criar algum tipo de objeto como parte do teste. No entanto, não faço ideia da melhor prática para isso ou se o PHPUnit permitir isso.
Eu tenho um objeto simulado PHPUnit que retorna, 'return value'independentemente de seus argumentos: // From inside a test... $mock = $this->getMock('myObject', 'methodToMock'); $mock->expects($this->any)) ->method('methodToMock') ->will($this->returnValue('return value')); O que eu quero poder fazer é retornar um valor diferente com base nos argumentos passados para o método mock. Eu tentei algo como: …
Qual é uma boa maneira de afirmar que duas matrizes de objetos são iguais, quando a ordem dos elementos na matriz não é importante ou está sujeita a alterações?
Eu queria saber se alguém que tem experiência em ambas as coisas pode lançar alguma luz sobre a diferença significativa entre os dois, se houver? Alguma força específica de cada uma que a torne adequada para qualquer caso específico?
PHPUnit contém um método assertEquals: https://phpunit.de/manual/current/en/appendixes.assertions.html#appendixes.assertions.assertEquals Ele também possui um método assertSame: https://phpunit.de/manual/current/en/appendixes.assertions.html#appendixes.assertions.assertSame À primeira vista, parece que eles fazem a mesma coisa. Qual é a diferença entre os dois? Por que eles são especificados?
Existe alguma maneira de definir diferentes expectativas de simulação para diferentes argumentos de entrada? Por exemplo, tenho uma classe de camada de banco de dados chamada DB. Esta classe possui um método chamado "Query (string $ query)", esse método recebe uma string de consulta SQL na entrada. Posso criar simulação …
Estou executando um grande conjunto de testes phpunit e gostaria de ver qual teste falhou assim que falhou, em vez de esperar que todos os testes sejam concluídos e, em seguida, ter uma lista de todas as falhas. Como posso dizer ao phpunit para fazer isso?
Estou tentando usar o PHPunit para testar uma classe que gera alguns cabeçalhos personalizados. O problema é que na minha máquina isso: <?php class HeadersTest extends PHPUnit_Framework_TestCase { public function testHeaders() { ob_start(); header('Location: foo'); $headers_list = headers_list(); header_remove(); ob_clean(); $this->assertContains('Location: foo', $headers_list); } } ou mesmo este: <?php class …
O problema Para melhorar minha qualidade de código, decidi tentar aprender como testar meu código usando Teste de Unidade em vez de minhas soluções de teste medíocres na melhor das hipóteses. Decidi instalar o PHPUnit usando o composer para uma biblioteca pessoal que me permite obter funções de banco de …
Estou usando phpunit em conexão com jenkins e quero pular alguns testes definindo a configuração no arquivo XML phpunit.xml Eu sei que posso usar na linha de comando: phpunit --filter testStuffThatBrokeAndIOnlyWantToRunThatOneSingleTest como faço para traduzir isso para o arquivo XML, uma vez que a <filters>tag é apenas para cobertura de …
Qual é a maneira de evitar que o phpunit tenha que chamar o construtor de um objeto mock? Caso contrário, eu precisaria de um objeto fictício como argumento do construtor, outro para isso etc. A api parece ser assim: getMock($className, $methods = array(), array $arguments = array(), $mockClassName = '', …