Używam Laravel 5.3.22 i chcę przetestować moją aplikację za pomocą bazy danych sqlite w pamięci migrując/wycofując dla każdego testu, jak to powiedział here. To jest sekcja Połączenia mój database.php config:Laravel ignoruje testowe połączenie z bazą danych
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
...
],
'testing' => [
'driver' => 'sqlite',
'database' => ':memory:',
'prefix' => '',
],
To config phpunit env:
<php>
<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="testing"/>
</php>
phpunit config oznacza, że laravel Shoud użyć "testing" połączenie sqlite do testowania, ale nie obchodzi go i kontynuuje z głównym połączeniem mysql. To nie jest opcja, mam duży i złożony schemat i nie można go używać do testowania jednostek za pomocą mysql. Jak mogę kontynuować? Nie mogę kpić z kreatora zapytań, ponieważ muszę potwierdzić wyniki.
dziękuję bardzo .. właśnie zaoszczędziłem czas –