seleniumer’s diary

「手動でExcelにスクショ貼付け」地獄からきました。テスト自動化しか望みがありません。java + selenium(since 2015/5)

Safaridriverが早過ぎる

Mac OSのブラウザテストにSafariは外せません。ということで導入してみたのですが、そこには長い長い道のりがありました。

まず

  • seleniumSafariを動かすにはSafaridriverが必要。
  • SafaridriverにはSafari機能拡張が必要。
  • Safari機能拡張(エクステンション)にはAppleが発行する証明書が必要。
  • 証明書の発行には、Appleデベロッパープログラムで課金が必要。
  • あわせてキーンチェーンアクセスで証明書署名要求も必要です。

下記のパイセンのサイトを参考に頑張りました。

僕がMacユーザーでないのもありますが、もうロールプレイングゲームかってレベル。

qiita.com

hutyao.hatenablog.com

そして晴れて、Selenium GridからMac/Safariを動かしてみるとおどきました。

物凄く早いんですね。クリックやら画面遷移がとにかく早いです。

これは捗るなぁ。嬉しいなぁ~。

と喜んでいるのも束の間でした。

ちょっと早すぎ。職場のWebアプリだとセッションエラーになってしまいました。

テストツールのラッパークラスではWebElementの色々な属性チェックとかやっていて、他のブラウザだとなかなか重かったりするのに、うむむ。これでは使用に耐えません。

却下の雲行きです。Safariは手作業地獄に舞い戻るかも。。。

その日、肩を落とした帰りの電車でもしかすると「implicit wait」が効かないのかもと思い立ちます。検証してみる価値ありですね。

driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

WebDriver: Advanced Usage — Selenium Documentation

 結果がわかったら追記します!