您可以使用 SQLite。
来自文档:
SQLite 数据库通常存储在单个普通磁盘文件中。但是,在某些情况下,数据库可能存储在内存中。
将此添加到config/database.php 文件中:
'sqlite_testing' => [
'driver' => 'sqlite',
'database' => ':memory:',
'prefix' => '',
],
在phpunit.xml 文件的<php> 节点下:
<env name="DB_CONNECTION" value="sqlite_testing" />
阅读更多here。
其他解决方案
在您的storage/ 文件夹上创建一个测试数据库,名称为database.sqlite,或者如果您想要其他名称或其他位置,您必须更改 config/database.php 文件中的配置,这些是默认配置:
'sqlite' => [
'driver' => 'sqlite',
'database' => storage_path('database.sqlite'),
'prefix' => '',
],
使用此命令运行您的迁移:
php artisan migrate --database=sqlite
或者将此行添加到.env 文件中:
DB_CONNECTION=sqlite
您的应用程序正在为 phpunit 使用 sqlite。
现在您可以运行迁移和测试了。之后,只需将DB_CONNECTION 更改为您用于项目的数据库。