| Q | EIN
| -------------------- | --------------
| PHPUnit-Version | 8.5.0
| PHP-Version | 7.3.12
| Installationsmethode | PHAR
Methode PHPUnit\Framework\TestCase::__constructor
wird mit dieser Meldung als intern gekennzeichnet:
<strong i="13">@internal</strong> This method is not covered by the backward compatibility promise for PHPUnit
Methode ist als intern markiert, anscheinend nur um zu signalisieren, dass sie nicht von BC abgedeckt wird.
Aber es ist nicht wirklich intern, da es für die schnelle Erweiterung von TestCase
in Ihren eigenen Suiten gedacht ist.
Die Verwendung interner Methoden wird gemeldet, indem Sie Psalm bei Ihren Tests ausführen:
ERROR: InternalMethod - tests/Xezilaires/Bridge/PhpSpreadsheet/RowIteratorTest.php:28:37 - The method PHPUnit\Framework\TestCase::__construct has been marked as internal
final class RowIteratorTest extends TestCase
Führen Sie Psalm auf Ihren Tests aus, die von PHPUnit 8.5.0 unterstützt werden.
Methode(n), die von den Tests verwendet werden sollen, sollten nicht als intern gekennzeichnet werden.
Habe gerade noch einen gefunden:
ERROR: InternalMethod - tests/Xezilaires/SpreadsheetIteratorTest.php:123:30 - The method PHPUnit\Framework\MockObject\Builder\InvocationMocker::willReturn has been marked as internal
$mocker->willReturn($spec['return']);
Ich weiß nicht, woher Sie die Idee haben, dass PHPUnit\Framework\TestCase::__constructor()
in Ihren eigenen Tests verwendet werden soll.
Es wird nicht direkt verwendet, aber der ctor wird einfach durch Erweitern von TestCase
aufgerufen, nicht wahr? Im Grunde verwendet jeder Testfall standardmäßig eine interne Methode.