Migre o projeto para a versão mais recente do PHPUnit.
[Work In Progress] Use por sua própria conta e risco :)
Clone o projeto:
$ git clone https://github.com/webimpress/phpunit-migration.git
Entre no diretório e instale as dependências:
$ cd phpunit-migration$ instalação do compositor
Para atualizar seu projeto para a versão mais recente do PHPUnit, vá até o diretório do seu projeto e execute:
$ ../caminho/para/phpunit-migration/bin/phpunit-migration migrar
compor dependências para as versões mais recentes do PHPUnit,
PHPUnit_Framework_TestCase
para PHPUnitFrameworkTestCase
com namespace,
setExpectedException
para expectException*
,
setUp
e tearDown
para caso protected
e correto ( setup
=> setUp
etc.),
FQCN na tag @cover
(ou seja, @covers MyClass
para @covers MyClass
),
assertInternalType
e assertNotInternalType
para um método de afirmação mais específico (PHPUnit 7.5+),
getMock
para getMockBuilder
com outras chamadas de função necessárias (PHPUnit 5.4+),
getMockBuilder(...)->...->getMock()
para createMock(...)
se possível (PHPUnit 5.4+),
assertEquals()
e assertNotEquals()
com parâmetros $delta
, $maxDepth
, $canonicalize
e $ignoreCase
para método de asserção mais específico (PHPUnit 7.5+),
adicione o tipo de retorno void aos seguintes métodos: setUp()
, tearDown()
, setUpBeforeClass()
, tearDownAfterClass()
, assertPreConditions()
, assertPostConditions()
, onNotSuccessfulTest(Throwable $th)
(PHPUnit 8.0+),
expectExceptionMessageRegExp
para expectExceptionMessageMatches
(PHPUnit 8.4+),
use novos nomes de asserção (mais legíveis):
assertNotIsReadable
substituído por assertIsNotReadable'
,
assertNotIsWritable
substituído por assertIsNotWritable'
,
assertDirectoryNotExists
substituído por assertDirectoryDoesNotExist'
,
assertDirectoryNotIsReadable
substituído por assertDirectoryIsNotReadable'
,
assertDirectoryNotIsWritable
substituído por assertDirectoryIsNotWritable'
,
assertFileNotExists
substituído por assertFileDoesNotExist'
,
assertFileNotIsReadable
substituído por assertFileIsNotReadable'
,
assertFileNotIsWritable
substituído por assertFileIsNotWritable'
,
assertRegExp
substituído por assertMatchesRegularExpression'
,
assertNotRegExp
substituído por assertDoesNotMatchRegularExpression'
. (PHPUnit 9.1+),
TODO: getMockBuilder(...)->...->setMethods(...)->getMock()
para createPartialMock(...)
se possível (PHPUnit 5.5.3+),
TODO: assertContains()
e assertNotContains()
no palheiro string
para um método de afirmação mais específico (PHPUnit 7.5+),
TODO: $this->assert
para self::assert
.
alterando classes PHPUnit_Framework_Error_*
provavelmente outras coisas que não me lembro agora ;-)
Observação
Lembre-se de que é uma ferramenta de desenvolvedor e deve ser usada apenas como auxiliar para migrar seus testes para uma versão mais recente do PHPUnit. Sempre após a migração execute todos os seus testes para verificar se as alterações aplicadas estão corretas e se seus testes ainda estão funcionando!