Migrez le projet vers la dernière version de PHPUnit.
[Work In Progress] Utilisez-le à vos propres risques :)
Clonez le projet :
$ git clone https://github.com/webimpress/phpunit-migration.git
Allez dans le répertoire et installez les dépendances :
$ cd phpunit-migration$ composer installer
Pour mettre à jour votre projet vers la dernière version de PHPUnit, accédez au répertoire de votre projet et exécutez :
$ ../path/to/phpunit-migration/bin/phpunit-migration migrate
composer des dépendances vers les dernières versions de PHPUnit,
PHPUnit_Framework_TestCase
à PHPUnitFrameworkTestCase
avec espace de noms,
setExpectedException
à expectException*
,
setUp
et tearDown
dans le cas protected
et correct ( setup
=> setUp
etc.),
FQCN dans la balise @cover
(c'est-à-dire @covers MyClass
à @covers MyClass
),
assertInternalType
et assertNotInternalType
vers une méthode d'assertion plus spécifique (PHPUnit 7.5+),
getMock
à getMockBuilder
avec d'autres appels de fonction requis (PHPUnit 5.4+),
getMockBuilder(...)->...->getMock()
pour createMock(...)
si possible (PHPUnit 5.4+),
assertEquals()
et assertNotEquals()
avec les paramètres $delta
, $maxDepth
, $canonicalize
et $ignoreCase
pour une méthode d'assertion plus spécifique (PHPUnit 7.5+),
ajoutez le type de retour void aux méthodes suivantes : setUp()
, tearDown()
, setUpBeforeClass()
, tearDownAfterClass()
, assertPreConditions()
, assertPostConditions()
, onNotSuccessfulTest(Throwable $th)
(PHPUnit 8.0+),
expectExceptionMessageRegExp
à expectExceptionMessageMatches
(PHPUnit 8.4+),
utilisez de nouveaux noms d'assertion (plus lisibles) :
assertNotIsReadable
remplacé par assertIsNotReadable'
,
assertNotIsWritable
remplacé par assertIsNotWritable'
,
assertDirectoryNotExists
remplacé par assertDirectoryDoesNotExist'
,
assertDirectoryNotIsReadable
remplacé par assertDirectoryIsNotReadable'
,
assertDirectoryNotIsWritable
remplacé par assertDirectoryIsNotWritable'
,
assertFileNotExists
remplacé par assertFileDoesNotExist'
,
assertFileNotIsReadable
remplacé par assertFileIsNotReadable'
,
assertFileNotIsWritable
remplacé par assertFileIsNotWritable'
,
assertRegExp
remplacé par assertMatchesRegularExpression'
,
assertNotRegExp
remplacé par assertDoesNotMatchRegularExpression'
. (PHPUnit 9.1+),
TODO: getMockBuilder(...)->...->setMethods(...)->getMock()
pour createPartialMock(...)
si possible (PHPUnit 5.5.3+),
TODO : assertContains()
et assertNotContains()
sur string
chaîne de foin vers une méthode d'assertion plus spécifique (PHPUnit 7.5+),
À FAIRE : $this->assert
to self::assert
.
changer les classes PHPUnit_Framework_Error_*
probablement d'autres choses dont je ne me souviens plus maintenant ;-)
Note
N'oubliez pas qu'il s'agit d'un outil de développement et qu'il ne doit être utilisé que comme une aide pour migrer vos tests vers une version plus récente de PHPUnit. Toujours après la migration, exécutez tous vos tests pour vérifier si les modifications appliquées sont correctes et si vos tests fonctionnent toujours !