MacでSeleniumを動かしてみました!
Seleniumとは
Seleniumとは、Webアプリケーションの画面操作を自動化するツールです。 クリックやキー入力、画面に表示された値の取得や画面キャプチャの取得など、ブラウザに対するさまざまな操作を自動で行うことができます。
引用:Selenium 実践入門
用意するもの
今回は Mac + Ruby + Chrome で動かすための用意になります!
1. Selenium WebDriverをインストール
Selenium WebDriverとは、プログラミング言語のコードからブラウザ操作が可能なライブラリです。 Java・Ruby・Javascriptなど各言語のライブラリとして提供されています。
引用:Selenium 実践入門
わたしは今回Rubyをつかうので、gemを利用してインストールします!
$ sudo gem install selenium-webdriver
このときRubyのバージョンが古いと、うまくいかないことがあるのでご注意ください!
バージョンを新しくする方法は下記記事を参考にさせていただきました。
2. 使用するブラウザのドライバをインストール
WebDriverは利用するドライバクラスを差し替えることでさまざまなブラウザ上で実行することができます。
わたしはChromeをつかいたいので、Chromedriverをインストールしました!
brew install chromedriver
Chromeのほかにも
FirefoxDriver
InternetExplorerDriver
SafariDriver
などあり、それぞれセットアップ方法も違うようなので調べてみてください!
3. 関連ライブラリのインストール
capybara
Rubyでスクリプトを記述するWebアプリケーションのE2Eテスト*1フレームワーク
ブラウザ操作(クリック・フォームコントロール・要素の取得など)を簡単なコマンドで行うことができるようになります!
sudo gem install capybara
Rspec
RubyでWebDriverと組み合わせて利用できるテストフレームワーク
sudo gem install rspec
以上で用意は完了となります!
いざ実行!
▼ test.rb
require 'capybara/rspec' # seleniumでchoromeを使用する Capybara.default_driver = :selenium Capybara.register_driver :selenium do |app| Capybara::Selenium::Driver.new(app, :browser => :chrome) end feature 'Cabybaraのサンプル' do scenario 'テストすること' do # Googleへアクセス visit 'https://www.google.co.jp/' end end
$ rspec test.rb
Chromeが自動的に立ち上がり、Googleへアクセスしたら成功です!
ひとこと
Seleniumを先輩から教えていただいて、備忘録のためにもまとめようと思い書きはじめましたが書きおえるのに数日要しました・・
ブログを書くのって難しい、ほぼ引用のくせに。。
記法も調べながら書くので所要時間倍増です;;
参考にした書籍
*1:E2E(End to End)テスト:ユーザと同じようにブラウザを操作し、挙動が期待通りになっているか確認するテスト