RSpec w/ Google Chrome
Google Chrome (Headless モード)を使った Feature Spec を実行する方法を説明します。
Google Chrome のインストール
最新版の Google Chrome をインストールします。
CentOS 6/7
次のようなファイル /etc/yum.repos.d/google-chrome.repo
を作成します。
[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/x86_64
enabled=1
gpgcheck=1
gpgkey=https://dl.google.com/linux/linux_signing_key.pub
yum
コマンドで Google Chrome をインストールします。
$ sudo yum install google-chrome-stable
お好みで日本語フォントもインストールします。
$ sudo yum install google-noto-sans-cjk-fonts
Mac
公式サイト からダウンロードし、インストールします。
Google Chrome Driver のインストール
最新版の Google Chrome Driver をパスの通った所にインストールします。
CentOS 6/7
公式サイト からダウンロードし、
パスの通ったところ(例: /usr/local/bin/
)へインストールします。
Mac
公式サイト からダウンロードし、 パスの通ったところへインストールします。
RSpec の実行
Google Chrome / Google Chrome Driver がインストールされているかを検出し、 自動で Google Chrome を用いて Feature Spec を実行します。
Poltergeist / PhantomJS と Google Chrome / Google Chrome Driver の両方がインストールされている場合、 Google Chrome / Google Chrome Driver を優先して使用します。
実行オプション
RSpec を実行する際、幾つかのオプションを環境変数に指定することができます。
オプション | 説明 |
---|---|
driver | 利用するドライバーを指定します。既定値は ‘auto’ です。 例: Google Chrome / Google Chrome Driver を使う driver=chrome bundle exec rspec 例: Poltergeist / PhantomJS を使う driver=phantomjs bundle exec rspec |
headless | ヘッドレスモードを有効にするかどうかを指定します。既定値は ‘1’ で、headless モードが有効になります。 例: Headless モードでテストを実行 headless=1 bundle exec rspec 例: ヘッドありモードでテストを実行 headless=0 bundle exec rspec ヘッドありモードでテストを実行すると、どのような操作が行われているかが視覚的にわかりやすく表示され、テスト失敗の原因が分かりやすくなります。 |