나는 간단한 로그인 테스트를하기 위해 황혼을 사용하고 있습니다.Laravel Dusk로 테스트 용 .env 파일을 만드는 방법
테스트에서 대체 데이터베이스를 사용하고 플랫폼에 등록 된 데이터를 삭제하지 않도록 .env.dusk 파일을 만들었습니다.
아카이브 .env의
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_dusk
DB_USERNAME=root
DB_PASSWORD=123456
아카이브
namespace Tests\Browser;
use Tests\DuskTestCase;
use Illuminate\Foundation\Testing\DatabaseMigrations;
class LoginTest extends DuskTestCase
{
use DatabaseMigrations;
/**
* A Dusk test example.
*
* @return void
*/
public function testLogin()
{
$user = factory(\App\User::class)->create(['email' => '[email protected]']);
$this->browse(function ($browser) use ($user) {
$browser->visit('/login')
->type('email', $user->email)
->type('password', 'secret')
->press('Login')
->assertPathIs('/home');
});
}
}
LoginTest.php
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_dusk_test
DB_USERNAME=root
DB_PASSWORD=123456
을 .env.dusk하지만 테스트를 실행할 때 그것을 데이터베이스를 변경하지 않습니다 응용 프로그램에서 사용되는 데이터베이스에서 모든 데이터를 삭제합니다.
이 문제를 어떻게 해결할 수 있습니까?
php artisan dusk show "local"을 실행하는 경우 –
env.dusk.testing 파일 이름을 env.dusk.local로 변경하십시오 – alaric