レポート

コミッターが語るSeleniumのいま,そして未来 ―「Selenium Committer Day 2017」レポート

この記事を読むのに必要な時間:およそ 5 分

Q&A パネルディスカッション

会場からリアルタイムで集められた質問のうち,多くの票を獲得しているものについて,3人のコミッターが答えていく方式で進んでいきました。

質問に答える3名のコミッター

質問に答える3名のコミッター

SeleniumプロジェクトとAppiumプロジェクトは統合する予定はあるのですか?
SeleniumとAppiumは,自動化する対象が異なるプロジェクトであり,統合の予定はありません。
テスト対象が,確率的に振る舞うものや,機械学習で結果が変わっていくものなどのとき,どのようにすればテストを生産性高く行えるでしょうか?
おもしろい質問ですね。機械学習に対するテストというところにたいへん興味がありますが,難しいですね。ソフトウェアテストとマシンラーニング。エンジニアリングとしてはとても面白そうですね。
ヘッドレスブラウザが登場した時はどう思いましたか?また,皆さんは使っていますか?
こういった質問に対しては,いつも逆に,なぜヘッドレスブラウザを使うのかを聞きたいですね。速いからだという人もいますが,実際のところ速くはありません。また,自分がユーザとしてそのWebサイトにアクセスするのに,ヘッドレスブラウザを使いますか? 使わないでしょう。
ただ,FirefoxやChromeのヘッドレスモードで,通常のブラウザと同じ振る舞いであれば使える場面もあるかもしれませんが,あまり意味はないと思います。ブラウザレベルでテスト自動化をするのは,実際にブラウザを通して表示することでそのWebサイトが安全であるかを確かめられるからであり,また,その画面を自分の目で見ることができるからです。
Selenium IDEとSelenium Builderの今後の動向はどのようになっているでしょうか?
こうしたプレイバックツールは,テクノロジーとしては古いと思います。残念ながら,Seleniumはボランティア活動であり,プロジェクトチームとしてはあまりこうしたテクノロジーには興味がありません。便利だとは思いますが,維持しようという動きはないのが実情です。
ただ,Selenium IDEのようなレコード・プレイバックツールがきっかけになって,Seleniumがさまざまな人に使われるようになってきたというのも事実ではあります。今後,レコード・プレイバックツールに貢献してくれる人が出てくると良いですね。
画面の「見た目」のテストについて,有効なソリューションや,今後どうなっていくかについてお聞かせください。今はDOMの計算済みスタイルや画面のスクリーンショットをスナップショットとして保存し,正解として使うアプローチがあると思います。
画面の見た目のテストで難しいのは,この比較がファジー(曖昧)でよいところはファジーな状態で通して,正確であるべきところは正確であるかを見なければならない,というところですね。
いろいろな企業が(Seleniumを利用したサービスに)参入してきていて,適切なスクリーンショットを提供すると,スナップショットをとって比較できるツールもあります。Seleniumはスクリーンショットに課題があります。ドライバーによっては現在表示している領域だけのスクリーンショットを取るものもありますし,フルページで表示してくれるものもあります。また,フルページという概念が,今はどんどん意義を失ってきていると思います。たとえば,Twitterとか無限にスクロールできますよね。
こうしたあたりもW3Cで標準化していますので,フルページという実装についても,今後W3Cに従ってコードを変更するということになるわけです。

スポンサーセッション・公募セッション

また,今回の勉強会では,3本のスポンサーセッションと1本の公募セッションもありました。

Toshiya Komoda(DeNA)―E2E自動テストの長期運用に耐えるための5つの手法(Five methods to sustain long-term operations of E2E auto test)

Toshiya Komoda氏

Toshiya Komoda氏

株式会社ディー・エヌ・エーのスポンサーセッションでは,ゲームを自分たちで作るというミッションを達成するために,いかに自動テストが活用できる状態を長く保つか,そのためにはどうしたら良いかが紹介されました。

KazuCocoa(Cookpad)―Let's step into the OSS community

KazuCocoa氏

KazuCocoa氏

クックパッド株式会社のスポンサーセッションでは,会社としてオープンソースコミュニティへの貢献を推奨しているということで,これまでにどういう貢献をしてきたかが発表されました。

Tomotaka Asagi(Human Crest)― 継続的E2Eテスト(Continuous E2E Testing)

Tomotaka Asagi氏

Tomotaka Asagi氏

株式会社ヒューマンクレストのスポンサーセッションは,自動テストを継続することの難しさに焦点を当てた発表で,その中でも最大の要因である「担当者がいなくなること」の対策として,Lynxが紹介されました。

Kenichiro Ota(SHIFT)―Windows Application DriverでWindowsアプリも自動テスト^_^ (Automate Windows app test with Windows Application Driver)

Kenichiro Ota氏

Kenichiro Ota氏

Selenium・Appium互換のコードでWindowsアプリのテスト自動化が行えるWindows Application Driverがデモと共に紹介されました。


海外からコミッターを招いて英語で発表が行われるという初の試みでしたが,参加者がたいへん多く,とても活気のある会となりました。当日はTwitterのハッシュタグ#seleniumjpが付いたツイートも活発でした。こちらのTogetterにまとめられています。今回のセッションはSeleniumがオープンソースプロジェクトであることから,Software Freedom Conservancyについて触れられたり,またオープンソースにもっと貢献しようという議論が多かったのが印象的でした。

Seleniumを利用したテスト自動化のニーズは日を追うごとに増していて,奇しくもこの勉強会が行われた2017年7月1日は,日本Seleniumユーザーコミュニティ4周年の記念日ということでした。熱心なコミッターや利用者が増え,さらなる進化を重ねるSeleniumは,今後もしばらくブラウザテスト自動化の最有力候補として注目され続けるでしょう。

著者プロフィール

河原田政典(かわらだまさのり)

Selenium・Appiumに偏りがちなテスト自動化エンジニア。紙の書籍と電子書籍をいかに使い分けるかが最近の関心事。
2017年10月ドイツで開かれるSeleniumConf Berlin 2017に参加するため,ついにパスポートを取得。わくわくがとまらない29歳の夏。

コメント

コメントの記入