Laravel PHPUnit PDOException исключение

Я не знаю, почему, когда я запускаю тест PHPUnit, я получаю следующую ошибку:

PDOException: SQLSTATE [HY000] [2002] Нет такого файла или каталога

Моя настройка базы данных среды тестирования:

return [

'fetch' => PDO::FETCH_CLASS,

'default' => 'mysql',

'connections' => [
'mysql' => [
'driver'    => 'mysql',
'host'      => 'localhost',
'database'  => 'clg_test',
'username'  => 'root',
'password'  => 'veryHardPass',
'charset'   => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix'    => '',
]
],

'migrations' => 'migrations',

];

Причина, по которой я использую MySQL вместо SQLite, заключается в том, что мои файлы миграции используют dropColumn который не поддерживается SQLite. Я называю миграцию через Artisan::call('migrate') в настройке.

Если я на самом деле вызвать миграцию вручную в терминале через php artisan migrate --env=testing затем миграция прошла успешно и базы данных созданы.

Почему я тогда сталкиваюсь с вышеуказанной проблемой?

0

Решение

Попробуйте изменить localhost в 127.0.0.1, Получаемое сообщение указывает на то, что скрипт не может подключиться к MySQL через сокет, но должен работать ip.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]