То же самое случилось со мной. Внезапно я начал получать следующую ошибку:
PHP Fatal error: Uncaught PHPUnit\Runner\Exception: Class 'Tests\\Feature\\ExampleTest' could not be found
И после того, как я прочитал комментарий @ frank-vue, я заметил то же самое, и он сделал: если я запускаю тесты для всей папки, она работает нормально, но если я запускаю тестирование для определенного класса / метода, я получаю эту ошибку.
Я пробовал более раннюю версию PHPStorm, пониженный плагин PHP и т. д ... и ничего не получалось.
В моем случаеКогда я проверял, трассировка стека выглядит следующим образом:
#0 /var/www/vendor/phpunit/phpunit/src/Runner/BaseTestRunner.php(145): PHPUnit\Runner\StandardTestSuiteLoader->load('Tests\\\\Unit\\\\Ex...', '/var/www/tests/...')
#1 /var/www/vendor/phpunit/phpunit/src/Runner/BaseTestRunner.php(105): PHPUnit\Runner\BaseTestRunner->loadSuiteClass('Tests\\\\Unit\\\\Ex...', '/var/www/tests/...')
#2 /var/www/vendor/phpunit/phpunit/src/TextUI/Command.php(177): PHPUnit\Runner\BaseTestRunner->getTest('Tests\\\\Unit\\\\Ex...', '/var/www/tests/...', Array)
#3 /var/www/vendor/phpunit/phpunit/src/TextUI/Command.php(159): PHPUnit\TextUI\Command->run(Array, true)
#4 /var/www/vendor/phpunit/phpunit/phpunit(61): PHPUnit\TextUI\Command::main()
#5 {main}
thrown in /var/www/vendor/phpunit/phpunit/src/Runner/StandardTestSuiteLoader.php on line 69
Обратите внимание Tests\\\\Unit\\\\Ex...
вместо Tests\\Unit\\Ex...
.
Итак, в итоге я нарушил правило и изменил файл поставщика,этого следует избегать любой ценой, но как временное решение это решает мою проблему.
Поэтому я добавил 1 строку к vendor/phpunit/phpunit/src/Runner/BaseTestRunner.php
в строке 98 (PHPUnit version 8.4.1), которая заменяет ненужные '\
1019 *