私はDuskを使って簡単なログインテストを行っています。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