laravel测试需要多个数据库尝试使用sqlite重复表
我的测试之旅还在继续 在一个应用程序中,我有多个数据库1。它用于后端内容,用户用于后端和其他内容2。前端和前端的用户 要执行测试,我需要为前端创建一个用户,并针对后端的内容进行测试 我正在尝试配置Phpunit和laravel,以便使用sqlite在内存中使用两个数据库,我正在努力 每个数据库有两个迁移文件,在laravel测试需要多个数据库尝试使用sqlite重复表,laravel,sqlite,testing,phpunit,Laravel,Sqlite,Testing,Phpunit,我的测试之旅还在继续 在一个应用程序中,我有多个数据库1。它用于后端内容,用户用于后端和其他内容2。前端和前端的用户 要执行测试,我需要为前端创建一个用户,并针对后端的内容进行测试 我正在尝试配置Phpunit和laravel,以便使用sqlite在内存中使用两个数据库,我正在努力 每个数据库有两个迁移文件,在database.php 'sqlite_testing_memory' => [ 'driver' => 'sqlite', 'databas
database.php
'sqlite_testing_memory' => [
'driver' => 'sqlite',
'database' => ':memory:',
'prefix' => '',
],
在我的phpunit.xml
中,我创建了以下内容:
<env name="APP_ENV" value="testing"/>
<env name="CACHE_DRIVER" value="array"/>
<env name="SESSION_DRIVER" value="array"/>
<env name="QUEUE_DRIVER" value="sync"/>
<env name="DB_CONNECTION" value="sqlite_testing_memory"/>
<env name="DB_DEFAULT" value="sqlite_testing_memory" />
<env name="DB_DATABASE" value=":memory:"/>
<env name="DB_DATABASE_2" value=":memory:"/>
每次我尝试迁移数据库时,都会因为已经存在的表而发生冲突,例如,后端的用户
与前端的用户
冲突
我知道我可以使用Schema::connection->('connection_name')
在迁移文件中指定连接,但仍然会得到冲突
在内存中的sqlite中是否可能有多个数据库
<>我怎样才能让我的测试使用多个数据库,或者我应该考虑恢复到MySQL测试数据库?
感谢您的帮助
编辑
我尝试删除重复的表,以便迁移可以工作,但现在模型连接出现错误
模型设置了连接属性以将其指向正确的连接-我正在尝试运行的测试现在出现错误:
未知数据库:内存:“
-这与依赖于第二个数据库连接的模型有关您是否能够找到此连接的解决方案?