Laravel PHP модуль с покрытием кода, выдающим ошибку PHPUnit \ Framework \ Exception: PHP Неустранимая ошибка: необработанная ошибка: класс «Маршрут» не найден - PullRequest
0 голосов
/ 05 февраля 2020

Я получаю следующую ошибку

PHPUnit \ Framework \ Exception: PHP Неустранимая ошибка: ошибка Uncaught: класс 'Route' не найден в / var / www/html/checkout/routes/api.php: 24

Я попытался ответить из Ошибка: класс 'Route' не найден в маршрутах. php при тестировании отдельного пакета Laravel с использованием Orchestra Testbench . Он не работает и выдает ту же ошибку.

Ниже мой XML код:

<filter>
        <whitelist processUncoveredFilesFromWhitelist="true">
            <directory suffix=".php">./app</directory>
            <directory suffix=".php">./routes</directory>
            <exclude>
                <directory >./routes</directory>
                 <file>./routes/api.php</file>
                 <file>./routes/web.php</file>
            </exclude>
        </whitelist>
    </filter>```

Ответы [ 3 ]

0 голосов
/ 05 февраля 2020

Вот мой файл PHPUnit

 <filter>
    <whitelist processUncoveredFilesFromWhitelist="true">
        <directory suffix=".php">./app</directory>
        <exclude>
            <directory suffix=".php">/app/Http/Middleware</directory>
            <file>./app/Http/Middleware/RedirectIfAuthenticated.php</file>
        </exclude>
        <exclude>
            <directory suffix=".php">/app/Exceptions</directory>
            <file>./app/Exceptions/Handler.php</file>
        </exclude>
        <exclude>
            <directory suffix=".php">/app/Helpers</directory>
            <file>./app/Helpers/Helpers.php</file>
        </exclude>
        <exclude>
            <directory suffix=".php">/app/Providers</directory>
            <file>./app/Providers/BroadcastServiceProvider.php</file>
            <file>./app/Providers/HttpsProtocolProvider.php</file>
        </exclude>
    </whitelist>
</filter>
0 голосов
/ 05 февраля 2020

Частично исправлено путем удаления из контрольного примера

/**
  * @runInSeparateProcess
 */ 

добавлен stderr = "true", как показано ниже

<phpunit backupGlobals="false"
         backupStaticAttributes="false"
         bootstrap="vendor/autoload.php"
         colors="true"
         convertErrorsToExceptions="true"
         convertNoticesToExceptions="true"
         convertWarningsToExceptions="true"
         processIsolation="false"
         stopOnFailure="false"
         stderr="true">
0 голосов
/ 05 февраля 2020

Я думаю, что из псевдонимов. Чтобы это исправить, попробуйте импортировать класс use Illuminate\Support\Facades\Route; в файл, в котором вы определяете маршруты

...