2018年からFirefox Quantumになっていたそうですが通常使うブラウザとして起動していなかったので、自動アップデートが今頃きて動作しなくなっていたことに気がつきました。
当店でSeleniumを使ったツールの公開をしているので、動作する方法を書きます。
対策としてはFirefoxをSeleniumの利用だけに使っている場合はバージョンを55まで戻す。
Quantumでも動作しないのか、というとブログを検索してみると人員不足で対応がまだのようです。SeleniumIDEのサイトでも最新版を確認してもQuantumに対応はまだのようなのでメインブラウザとして使ってないのであれば55まで戻す。
動作しない状況はFirefoxの起動まではするが、clickなどの自動操作が動きませんでした。
FirefoxのSelenium IDEが動作するバージョンに戻すにはこちらのURLからダウンロードして通常のインストールをするだけです。
https://ftp.mozilla.org/pub/firefox/releases/55.0/
ChromeでSeleniumを動かす場合
最新バージョンでも動作するようです。
Selenium IEDで出力したスクリプトの10行目あたりにある。firefox、chromeの部分をchromeに変更。
@driver = Selenium::WebDriver.for :chrome
FirefoxのみでSelenium IDEを使っていたらchrome用のdriverが入ってない可能性もあるので、chromedriverをインストールしないと動作しないようです。
chromedriverをインストールする
http://chromedriver.storage.googleapis.com/index.html?path=2.45/
macOSの64bit版で最新(2019/1/30時点)が24.5で、それ以上はなぜか32bit版しかなかったので24.5をインストールしました。
ダウンロードしてzipからchromedriverコマンドが展開されたら、/usr/local/binにコピー。
確認で
which chromedriver
でパスが通ってるか確認。でGoogle chromeでSeleniumが動作します。FirefoxでもChromeでもどちらでも動けば問題ないと思います。
Selenium 2.5.3からRSPecに変更になった
今までは実行時にruby selenium.rbで実行だったのが、spec selenium.rbで実行に変更になってました。rspecの方が速度が速いそうです。インストールが必要になるので
gem install rspec
でインストールしておくと使用できます。