海外のseleniumカンファレンスではどんな発表がされているのか2014
DESCRIPTION
第2回日本Seleniumユーザーコミュニティ勉強会(http://seleniumjp.connpass.com/event/9222/)の発表資料です。TRANSCRIPT
![Page 1: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/1.jpg)
海外のSeleniumカンファレンスではどんな発表がされているのか 2014
2014/10/18
株式会社TRIDENT
伊藤望
![Page 2: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/2.jpg)
自己紹介
伊藤 望
会社
株式会社TRIDENT 代表取締役
テスト自動化の支援を行うベンチャー
www.trident-qa.com (ブログあり)
コミュニティ
「日本Seleniumユーザーコミュニティ」を主宰
テスト自動化研究会
![Page 3: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/3.jpg)
Selenium Conference
日本にも「Selenium勉強会」があるが、、
世界には「Selenium Conference」がある!
どんな様子なのか?
どんな発表が行われているのか?
どんなトレンドがあるのか?
![Page 4: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/4.jpg)
Selenium Conference(SeConf)とは
2011年から毎年開催
世界中からSelenium開発者・ユーザーが集まる
3日間にわたるセッション&ワークショップ
Seleniumコミッター・プロジェクトリードによる講演
http://seleniumconf.org/
![Page 5: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/5.jpg)
開催歴
2011 4月 サンフランシスコ(アメリカ)
2012 4月 ロンドン(イギリス)
2013 6月 ボストン(アメリカ)
2014 9月 バンガロール(インド)
![Page 6: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/6.jpg)
SeConf 2014
初のアジア開催(インド)
スケジュール
9/14:ワークショップ Day
9/15、9/16:セッション Day
定員:425名
参加費(セッション Day)
3,000~15,000ルピー
(約5,000~25,000円)
![Page 8: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/8.jpg)
セッションリスト
http://confengine.com/selenium-conf-2014/schedule
![Page 9: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/9.jpg)
セッションリスト
Selenium Gridのスケーリングと管理 GrouponのSelenium Grid拡張
WebDriverでウェブプラットフォームをテストする W3Cの新プロジェクト
SeleniumとJoomlaオープンソース
JavaScript界におけるWebDriverとCucumber
取込みと拡張:Seleniumプロジェクトはどうやって世界最大のクローズド・ソース企業を参画させたか MicrosoftのSeleniumプロジェクトへの参加
GebでよりよいSeleniumテスト
http://confengine.com/selenium-conf-2014/schedule
![Page 10: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/10.jpg)
セッションリスト
Seleniumテストをクラウド上のモバイル実機端末で実行する
Seleniumをあなたの手の平に:Appiumとモバイルテスト自動化
機能テストで、アプリケーションをハッカーから守る
インジェクション攻撃をSeleniumでテスト
Page Objectを超えるデザインパターン: Page Object構築時に使われるデザインパターンの探究
Page Objectパターンの危機
Page Objectをきちんとやる
http://confengine.com/selenium-conf-2014/schedule
![Page 11: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/11.jpg)
セッションリスト
正しいテストピラミッドを達成するためのSeleniumデトックス
大移動 - Salesforceはいかにして3万5千のSelenium RCテストを移行したか
QTP/UFTからSeleniumへの移行 - 80%の実行時間削減
Allureフレームワーク - Seleniumテストのための、水晶のようにクリアな結果レポート [どんなプログラミング言語にも使える]
自分で情報を見つける方法
JavaScriptを介し、Seleniumテストの安定性を向上させる
http://confengine.com/selenium-conf-2014/schedule
![Page 12: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/12.jpg)
セッションリスト
モバイルとWebアプリケーションの機能テストのためのClojure
OSSを採用し早く失敗するために、エンタープライズのやり方の上に築かれたドラゴンをどのように調教したか
クロスブラウザテスト自動化において重要なことが3つある - ロケーター、ロケーター、ロケーター - しかし、正しいロケーターを見つけるにはどうすればよいだろうか?
Seleniumのノードには、宝の島から海賊が奪った戦利品よりも素晴らしいお宝が眠っているる方法
http://confengine.com/selenium-conf-2014/schedule
![Page 13: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/13.jpg)
セッション紹介
http://seleniumconf.org/docs/SeConf2014_ProgramGuide.pdf
セッションプログラム・発表スライドを参考に作成
Conferenceサイトに動画もあり
![Page 14: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/14.jpg)
セッション紹介
テストインフラ
![Page 15: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/15.jpg)
テストインフラ
Selenium Gridのスケーリングと管理
(Scaling and managing Selenium Grid)
http://www.slideshare.net/dimakovalenko/scaling-and-managing-selenium-grid
Grouponのエンジニア
「Selenium Design Patterns and Best Practices」著者
Selenium Grid:
Seleniumの、多数のマシンでのテスト分散実行機能
Selenium Grid Extras:
Groupon発の、Selenium Grid拡張フレームワーク
![Page 16: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/16.jpg)
テストインフラ
Selenium Grid Extras
https://github.com/groupon/Selenium-Grid-Extras
IEの保護モード設定を自動で設定
ブラウザやchromedriver.exe/iedriver.exeのKill
WebDriverの自動更新
全てのnodeの設定を1ヶ所に集約
Jenkinsプラグイン
テストのビデオ記録(開発中)
![Page 17: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/17.jpg)
テストインフラ
WebDriverでウェブプラットフォームをテストする (Testing the Web Platform with WebDriver)
http://sny.no/2014/09/twpwd/
Mozillaのエンジニア
Test the Web Forward
http://testthewebforward.org/
Web標準のテストケースをコミュニティが作成
東京でもイベントが行われた
Test the Web ForwardでWebDriverを活用する方法
![Page 18: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/18.jpg)
テストインフラ
SeleniumとJoomlaオープンソース (Selenium and Joomla Open Source)
Joomla!コントリビュータ
Joomla!:
オープンソースのCMS(Webサイト構築・管理システム)
特に海外で人気
PHPUnit + Selenium WebDriverをJoomla!の開発プロジェクトで活用
![Page 19: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/19.jpg)
セッション紹介
Seleniumプロジェクト
![Page 20: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/20.jpg)
Seleniumプロジェクト
JavaScript界のWebDriverとCucumber! (WebDriver and Cucumber in the JavaScript Land!)
https://www.slideshare.net/slideshow/embed_code/38774592
WebDriverJS:
https://code.google.com/p/selenium/wiki/WebDriverJs
WebDriverの新しいJavaScriptバインディング
非同期コードでテストを記述
Cucumber.js:
https://github.com/cucumber/cucumber-js
振る舞い駆動テストフレームワークCucumberのJavaScript移植
![Page 21: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/21.jpg)
Seleniumプロジェクト
取込みと拡張:Seleniumプロジェクトはどうやって
世界最大のクローズド・ソース企業を参画させたか (Embrace and Extend: How the Selenium Project Convinced the World's Largest Closed-Source Company to Participate)
Jim Evans氏
.NETバインディングとIEDriverの開発者
Salesforceのエンジニア
MicrosoftをSeleniumプロジェクトに参加させるまで
Internext Explorer Developer Channel
次期バージョンのIEの機能を試用できる
WebDriverの機能がIEに取り込まれている!
![Page 22: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/22.jpg)
Seleniumプロジェクト
GebでよりよいSeleniumテスト (Better Selenium Tests with Geb)
Geb:
http://www.gebish.org/
Java + Groovyで、WebDriverテストをもっと簡単に
![Page 23: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/23.jpg)
セッション紹介
モバイル
![Page 24: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/24.jpg)
モバイル
Seleniumテストをクラウド上のモバイル実機端末で
実行する (Running Selenium tests on a cloud of real mobile devices)
https://github.com/dhimil/selConf/blob/master/Selenium%20Conference.pdf?raw=true
BrowserStackのエンジニア
BrowserStack
クラウドのブラウザ手動/自動テスト環境を提供
なぜシミュレータでなく実機でテストすべきなのか
![Page 25: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/25.jpg)
モバイル
シミュレータによるレイアウト崩れの例
https://github.com/dhimil/selConf/blob/master/Selenium%20Conference.pdf?raw=true
![Page 26: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/26.jpg)
モバイル
Seleniumをあなたの手の平に:
Appiumとモバイルテスト自動化 (Selenium in the palm of your hand: Appium and automated mobile testing)
Sauce Labsのエンジニア
Sauce Labs
クラウドのブラウザ自動/手動テスト環境を提供
Appium:
Seleniumと同じコマンド体系でモバイルテストが可能
![Page 27: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/27.jpg)
セッション紹介
セキュリティ
![Page 28: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/28.jpg)
セキュリティ
機能テストで、アプリケーションをハッカーから守る (Hacker-proof your app using Functional Tests)
https://www.slideshare.net/slideshow/embed_code/38957882
LinkedInのエンジニア
Seleniumテスト中にセキュリティテストも実施
IronWASP
https://ironwasp.org/
オープンソース
Webサイトに脆弱性が無いかを調べるセキュリティスキャナー
![Page 29: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/29.jpg)
セキュリティ
インジェクション攻撃をSeleniumでテスト (Testing "Injection" Attacks with Selenium)
Webページから不正な入力を行い、攻撃を実行
SQLインジェクション
コマンドインジェクション
XSS(クロスサイトスクリプティング)
![Page 30: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/30.jpg)
セッション紹介
ページオブジェクト
![Page 31: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/31.jpg)
ページオブジェクトデザインパターン
画面情報は1つのクラスに集約して管理
テスト対象画面 スクリプト
スクリプト スクリプト
スクリプト
ページオブジェクト
ページオブジェクト
![Page 32: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/32.jpg)
ページオブジェクト
Page Objectを超えるデザインパターン: Page Object
構築時に使われるデザインパターンの探究 (Design Patterns beyond the Page Object: An investigation into the design patterns used while building page objects)
https://github.com/codedsk/seleniumconf2014/tree/master/presentations
Page Objectにプラスアルファ
WebFormパターン
多数の入力項目を持つ画面の扱い
ItemListパターン
表・リスト形式でデータを表示する画面の扱い
IframeWrapパターン
Iframeを含む画面の扱い
![Page 33: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/33.jpg)
ページオブジェクト
Page Objectパターンの危機 (Perils of Page-Object Pattern)
http://www.slideshare.net/abagmar/perils-of-pageobject-pattern
ビジネスレイヤー ページオブジェクトパターン
ページオブジェクトの上にもう1つレイヤーを作る
![Page 34: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/34.jpg)
ページオブジェクト
Page Objectをきちんとやる (Page Objects Done Right)
http://www.slideshare.net/orenrubin/page-objects-presentation-selenium-conference-2014-38767492
ページオブジェクトの基礎から応用まで
![Page 35: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/35.jpg)
セッション紹介
マイグレーション
![Page 36: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/36.jpg)
マイグレーション
正しいテストピラミッドを達成するための
Seleniumデトックス (Selenium DeTox for Achieving the Right Testing Pyramid)
http://www.slideshare.net/nashjain/i-dea-s-testing-pyramid
保守コストが低く、素早く実行できる単体テストの比率を増やすのが、目指すべき姿
![Page 37: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/37.jpg)
マイグレーション
大移動 - Salesforceはいかにして3万5千の
Selenium RCテストを移行したか (Migrating the herd - How Salesforce is migrating 35,000 Selenium RC tests)
単体テスト等の、より高速なレイヤーに移行
Selenium RC(Selenium 1)から、WebDriver(Selenium 2)に移行
![Page 38: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/38.jpg)
マイグレーション
ケーススタディ - QTP/UFTからSeleniumへの移行 –
80%の実行時間削減 (Case Study - QTP/UFT to Selenium Migration - 80% reduced execution time)
QTP/UFT:
HP社の商用テストツール
商用ツールでは(おそらく)一番有名
![Page 39: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/39.jpg)
セッション紹介
その他
![Page 40: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/40.jpg)
その他
Allureフレームワーク - 水晶のようにクリアなSeleniumテスト結果レポート [どんな言語でも使える]
(Allure framework - crystal clear reports for your selenium tests [in any language])
Yandex(ロシアの検索・ポータルサイト大手)のエンジニア
Allureフレームワーク
http://allure.qatools.ru/
オープンソース
見やすいHTMLレポート
![Page 42: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/42.jpg)
その他
自分で情報を見つける方法 (How To Find Information On Your Own)
http://www.slideshare.net/tourdedave/how-to-find-selenium-information-on-your-own
「The Selenium Guidebook」著者
Seleniumの役立つ情報リンク集
![Page 43: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/43.jpg)
その他
JavaScriptを介し、Seleniumテストの安定性を
向上させる (Increase Selenium tests stability via JavaScript)
http://www.slideshare.net/khroliz/increase-selenium-tests-stability-via-java-script
タイミング問題などの、テストがたまに失敗する不安定要因を減らす
JavaScript呼び出しを活用し、非同期まわりの問題を改善
ただし、手動操作と100%同じにならないリスクあり
![Page 44: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/44.jpg)
その他
モバイルとWebアプリケーションの
機能テストのためのClojure (Clojure for functional testing of Mobile and Web apps)
http://www.slideshare.net/MayurJadhav5/clojureseleniumconf
Clojure:
関数型プログラミング言語
Lispの流れを汲む
Calabash、Appium、WebDriverなどのテストツールをClojureでラップして利用
![Page 45: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/45.jpg)
その他
OSSを使い早く失敗するために、エンタープライズの手法の上に築かれたドラゴンをどう調教したか
(How we trained our dragon built on enterprise practices to adopt and fail fast with OSS)
大企業のモバイルテストを、オープンソースツールを構築した話
![Page 46: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/46.jpg)
その他
クロスブラウザテスト自動化において重要なことが3つある - ロケーター、ロケーター、ロケーター - しかし正しいロケーターを見つけるにはどうすればよいだろうか?
(There are three things that matter in cross-browser test automation- locator, locator, locator - But how do you find the right one?)
ロケーター:
findElement(By.id(“search_keyword”)).click()
特定のブラウザやバージョンでロケーターがうまく動かない場合の対処
ロケーター
![Page 47: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/47.jpg)
その他
Seleniumのノードには、宝の島から海賊が奪った戦利品よりも素晴らしいお宝が眠っている
(There is more treasure in Selenium nodes than in all the pirate's loot on Treasure Island.)
SeleniumのノードのログとOSレベルのメトリクスを収集し、テスト結果解析に活用
![Page 48: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/48.jpg)
思ったこと
Selenium IDEの発表が全然無い
https://groups.google.com/forum/#!topic/selenium-developers/eVfDHbgOflE
![Page 49: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/49.jpg)
まとめ
結構いい情報があった(と思う)
スライドの上がっていない発表が多いので、動画の方も頑張りたい
![Page 50: 海外のSeleniumカンファレンスではどんな発表がされているのか2014](https://reader033.vdocuments.pub/reader033/viewer/2022042715/558528e9d8b42a9b388b45d7/html5/thumbnails/50.jpg)
ご清聴ありがとう ございました