Мои настройки phpunit env в phpunit.xml не сохраняются в моем тесте.
Я запускаю php artisan config:clear
. Затем phpunit ./tests/Browser/NotesTest.php --filter a_user_can_delete_notes
.
Запускает мою базу данных sqlite "testing_browser". Я вижу, это растет до 36 кб. Но затем он использует мою настоящую домашнюю базу данных, определенную в ".env".
env settings в phpunit.xml:
<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_browser"/>
</php>
Пример теста:
public function a_user_can_delete_notes()
{
$user = factory(User::class)->create();
$notes = factory(Note::class, 2)->create([
'user_id' => $user->id
]);
$this->browse(function (Browser $browser) use ($user, $notes) {
$browser->loginAs($user)
->visit(new NotesPage)
->pause(500);
foreach ($notes as $note) {
$browser->click('.notes .list-group-item:nth-child(2) a:nth-child(2)')
->pause(1000)
->assertSeeIn('.alert', 'Your note has been deleted.')
->assertDontSeeIn('.notes', $note->title);
}
$browser->pause(500)
->assertSeeIn('.notes', 'No notes yet');
});
}
PHPUnit 6.5.14
laravel / framework 5.4