開発ブログ

株式会社Nextatのスタッフがお送りする技術コラムメインのブログ。

電話でのお問合わせ 075-744-6842 ([月]-[金] 10:00〜17:00)

  1. top >
  2. 開発ブログ >
  3. PHP >
  4. Laravel >
  5. 【Laravel5.5】vagrantとlaravel duskを使ってブラウザテストをしてみる

【Laravel5.5】vagrantとlaravel duskを使ってブラウザテストをしてみる

こんにちは。
ニシザワです。

本日はvagrantとlaravel duskを使ってブラウザテストをしてみます。
公式は こちら

環境

vagrant 2.0.0 centos 7.3

vagrantにChromeDriverを入れる

まずは公式よりドライバを取得します。
wget https://chromedriver.storage.googleapis.com/2.29/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
sudo mv chromedriver /usr/local/bin/
sudo chown root:root /usr/local/bin/chromedriver

必要なライブラリインストール

sudo yum install -y libX11 GConf2 fontconfig

Chromeインストール

vim /etc/yum.repos.d/google-chrome.repoで設定ファイルを作成します。
[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/$basearch
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub
sudo yum install -y google-chrome-unstable libOSMesa google-noto-cjk-fonts

Laravel duskをインストール

composer require --dev laravel/dusk:"^2.0"
本番環境にDuskをインストールしてはいけません。インストールすると、アプリケーションに対する未認証でのアクセスを許すようになります。
とのこなので、本番環境ではインストールしないように気をつけてください。
php artisan dusk:install
.envの設定を変更する
APP_URL=your-local-url.app

実行

実行は
php artisan dusk
で可能です。

ログインのテストをしてみる

認証作成
php artisan make:auth
php artisan migrate
テスト作成
php artisan dusk:make LoginTest
tests/Browser/LoginTest.phpを編集する
        $user = factory(User::class)->create([
            'email' => 'taylor@laravel.com',
        ]);
        $this->browse(function ($browser) use ($user) {
            $browser->visit('/login')
                    ->type('email', $user->email)
                    ->type('password', 'secret')
                    ->press('Login')
                    ->assertPathIs('/home')
                    ->screenshot('login');
        });
さてさて、実行してみる
php artisan dusk
OKとでれば、tests/Browser/screenshots/login.pngができるので確認してみてください。
便利ですので是非使ってみてください!
本日はこれまで。
TOPに戻る