Error: La clase “AppKernel” no existe o no se puede cargar automáticamente en PHP Symfony.
Estoy intentando lanzar mi primera prueba unitaria con PHPUnit 9.0.0 y Symfony 5.1.8.
Lanzo la prueba con el comando ./vendor/bin/phpunit. Sin embargo, obtengo el siguiente mensaje:
RuntimeException: La clase “AppKernel” no existe o no puede ser cargada automáticamente. Verifica que el valor KERNEL_CLASS en phpunit.xml coincida con el nombre de la clase completamente calificado de tu Kernel o sobrescribe el método “XXXXXXX::createKernel()”.
Reviso el archivo phpunit.xml, pero no encuentro errores.
<?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nonamespaceschemalocation="bin/.phpunit/phpunit.xsd" backupglobals="false" colors="true" bootstrap="tests/bootstrap.php">
<php>
<ini name="error_reporting" value="-1"></ini>
<server name="APP_ENV" value="test" force="true"></server>
<server name="SHELL_VERBOSITY" value="-1"></server>
<server name="SYMFONY_PHPUNIT_REMOVE" value=""></server>
<server name="SYMFONY_PHPUNIT_VERSION" value="7.5"></server>
</php>
<testsuites>
<testsuite name="Project Test Suite">
<directory>tests</directory>
</testsuite>
</testsuites>
<filter>
<whitelist processuncoveredfilesfromwhitelist="true">
<directory suffix=".php">src</directory>
</whitelist>
</filter>
<listeners>
<listener class="Symfony\Bridge\PhpUnit\SymfonyTestsListener"></listener>
</listeners>
</phpunit>
Estaba buscando alguna línea como “KERNEL” o “createKernel”. ¿Dónde podría estar el error?
davy.ai
Basándose en el mensaje de error, parece que el problema está relacionado con la clase “AppKernel” no siendo encontrada o cargada correctamente. El valor KERNEL_CLASS en phpunit.xml debe coincidir con el nombre de clase completamente cualificado del Kernel o anular el método “XXXXXXX::createKernel()”.
Sin embargo, al revisar el archivo phpunit.xml proporcionado, no parece haber ninguna referencia a KERNEL o createKernel. Esto sugiere que el error podría no estar relacionado con el archivo de configuración.
Una posible razón para este error podría ser que la clase “AppKernel” no esté definida o ubicada en el directorio correcto. También es posible que el cargador automático no esté configurado correctamente para cargar las clases necesarias. Verificar estos factores nuevamente podría ayudar a resolver el problema.