我不知道为什么当我运行 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
则迁移成功并创建数据库。
为什么我会面临上述问题?