PHPUnit classes MUST be used in namespaced version, e.g.
\PHPUnit\Framework\TestCase
instead of \PHPUnit_Framework_TestCase
.
PHPUnit v6 has finally fully switched to namespaces.
You could start preparing the upgrade by switching from non-namespaced TestCase
to namespaced one.
Forward compatibility layer (\PHPUnit\Framework\TestCase
class) was
backported to PHPUnit v4.8.35 and PHPUnit v5.4.0.
Extended forward compatibility layer (PHPUnit\Framework\Assert
,
PHPUnit\Framework\BaseTestListener
, PHPUnit\Framework\TestListener
classes) was introduced in v5.7.0.
Risky when PHPUnit classes are overridden or not accessible, or when project has PHPUnit incompatibilities.
Target version of PHPUnit.
Allowed values: '4.8'
, '5.7'
, '6.0'
and 'newest'
Default value: 'newest'
Default configuration.
--- Original
+++ New
<?php
-final class MyTest extends \PHPUnit_Framework_TestCase
+final class MyTest extends \PHPUnit\Framework\TestCase
{
public function testSomething()
{
- PHPUnit_Framework_Assert::assertTrue(true);
+ PHPUnit\Framework\Assert::assertTrue(true);
}
}
With configuration: ['target' => '4.8']
.
--- Original
+++ New
<?php
-final class MyTest extends \PHPUnit_Framework_TestCase
+final class MyTest extends \PHPUnit\Framework\TestCase
{
public function testSomething()
{
PHPUnit_Framework_Assert::assertTrue(true);
}
}
The rule is part of the following rule sets:
@PHPUnit48Migration:risky with config:
['target' => '4.8']
@PHPUnit50Migration:risky with config:
['target' => '4.8']
@PHPUnit52Migration:risky with config:
['target' => '4.8']
@PHPUnit54Migration:risky with config:
['target' => '4.8']
@PHPUnit55Migration:risky with config:
['target' => '4.8']
@PHPUnit56Migration:risky with config:
['target' => '4.8']
@PHPUnit57Migration:risky with config:
['target' => '5.7']
@PHPUnit60Migration:risky with config:
['target' => '6.0']
@PHPUnit75Migration:risky with config:
['target' => '6.0']
@PHPUnit84Migration:risky with config:
['target' => '6.0']
@PHPUnit100Migration:risky with config:
['target' => '6.0']