昨日やっとトレーナーレベル22になりました。わーい。
御存知の通り上野公園は毎週末ヤバイことになってますが、コイキングだらけのおかげでギャラドスを取れました。
さて、ウチは非プログラマもテスターとして戦力化しているので、Selenium IDEベースの環境を構築しています。
ということは当然ながら、Selenium-RCでCIを回すことになります。
先日Firefox48がリリースされたのでアップデートしてみたところ、テストが全く動かなくなりました。
調べてみたところ、アドオンの署名チェックが強制されるようになったことが原因*1のようです。
このスレッドが参考になります。
http://groups.google.com/forum/#!topic/selenium-users/kDsWkujq0Y4
結論→アドオン開発向けFirefoxビルドを使え
このスレッドの結論としては、
Technically Selenium FirefoxDriver should work with Firefox 48 if you disable e10s (multiprocessing) and use an unbranded build, such as DevEdition or a custom build. This is because 48 also ships with add-on signing, and FirefoxDriver isn’t signed.
技術的には、FirefoxDriverはFirefox48のunbrandedビルド上でe10s(マルチプロセス化)を無効化すれば動くはずだ。 Firefox48から署名チェックを強制するようになったが、FirefoxDriverは署名なしであることが問題の原因である。
とのことです。
『unbrandedビルド』とは、FAQにある通り
How will the unbranded versions of Firefox work? They work just like Firefox, with two differences: they will have a setting to disable mandatory signature checks, and they will not have the Firefox name and logo (instead using a generic name and logo). These builds are available in the en-US locale only.
unbrandedビルドって何? Firefox通常版と全く同じように動く。ただし... * アドオンの署名チェックが無効化されている * 『Firefox』という名前やロゴが消されている(かもしれない) * 英語版のみ
だそうです。
とりあえずこいつをこのへんからダウンロードして、プロファイルで
user_pref('xpinstall.signatures.required', false); user_pref('browser.tabs.remote.autostart', false);
としておけば、現時点の最新ベータ版である49.0b1でも元通り動くようになりました。
2016-10-06追記
現時点最新版の50.0b4でも動作するので当面はこの方法で行けそうです。
2017-03-16追記
現時点最新版の53.0b1もOK。