Я пытаюсь запустить базовый функциональный тест с использованием WebTestCase в приложении Symfony 4. Когда я запускаю свой тест, я получаю этот вывод:
1) Tests\Application\EndToEnd\AuthenticationTest::testAuthenticationMethodNotAllowed RuntimeException: Class "App\Kernel" doesn't exist or cannot be autoloaded. Check that the KERNEL_CLASS value in phpunit.xml matches the fully-qualified class name of your Kernel or override the Tests\Application\EndToEnd\AuthenticationTest::createKernel() method.
Пытаясь следовать совету в этот ответ, я редактирую vendor/phpunit/phpunit/phpunit.xml и добавляю эту строку:
<server name = "KERNEL_CLASS" value = "AppKernel" />
и вот где становится интересно: я все еще получаю жалобу на то, что App\Kernel -- с обратной косой чертой -- недоступен.
Это говорит мне о том, что я, вероятно, редактирую неправильный XML-файл, поскольку мое отредактированное значение не содержит обратной косой черты. В какой файл XML я должен добавить свое определение?
Мы используем Symfony 4.2.4.
Вы можете указать свой параметр в файле env.test, я думаю, что этот рецепт может вам помочь: github.com/symfony/recipes/tree/master/symfony/phpunit-bridgee (автоматически устанавливается при установке symfony/test-pack)
Спасибо. Как установить этот рецепт?
Я не знаю, что вы уже установили, иначе запустите composer require test
Спасибо! Я попробую.






Оказалось, что мне нужно создать файл phpunit.xml в корневой уровень моего проекта. Как только там появился соответствующий XML, все решилось само собой.
В моем проекте файла phpunit.xml не было, а phpunit.xml.dist был. Использование файла, который уже был там, отлично сработало для меня.
Я получил эту ошибку при запуске тестов через PHPStorm (они работали при запуске их вручную). Мне пришлось установить «Файл конфигурации по умолчанию» на /path/to/phpunit.xml.
phpunit.xml или phpunit.xml.dist вашего проекта.
Какую версию symfony 4 вы используете?