20140118 selenium勉強会 - Jenkins×Selenium 最初の一歩-
Upcoming SlideShare
Loading in...5
×
 

20140118 selenium勉強会 - Jenkins×Selenium 最初の一歩-

on

  • 18,514 views

 

Statistics

Views

Total Views
18,514
Views on SlideShare
2,891
Embed Views
15,623

Actions

Likes
13
Downloads
31
Comments
0

16 Embeds 15,623

http://www.publickey1.jp 13442
http://softwaretest.jp 1220
http://mj89sp3sau2k7lj1eg3k40hkeppguj6j-a-sites-opensocial.googleusercontent.com 782
https://mj89sp3sau2k7lj1eg3k40hkeppguj6j-a-sites-opensocial.googleusercontent.com 106
https://twitter.com 43
https://pyxis.sega.co.jp 15
http://www.google.co.jp 6
http://cache.yahoofs.jp 2
https://www.chatwork.com 2
http://translate.googleusercontent.com 2
http://s.deeeki.com 2
http://publickey1.jp 2
http://plus.url.google.com 1
http://webcache.googleusercontent.com 1
https://www.google.co.jp 1
http://snp22.smartnews.be 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

20140118 selenium勉強会 - Jenkins×Selenium 最初の一歩- 20140118 selenium勉強会 - Jenkins×Selenium 最初の一歩- Presentation Transcript

  • 第1回 日本Seleniumユーザコミュニティ勉強会 Jenkins × Selenium 最初の一歩 玉川紘子 @nkns165 1
  • 自己紹介 名前:玉川 紘子(たまがわ ひろこ) 所属:株式会社SHIFT ソフトウェアテスト事業部 CI/自動テスト導入担当として活動 コミュニティ:STAR(テスト自動化研究会) 日本Jenkinsユーザ会 2
  • SeleniumでCI(継続的インテグレーション) ■Seleniumのテストを作成しただけでは… • • • 誰かがそのテストを実行しなければいけない テスト結果の確認、実行履歴の管理など周辺作業が残る 仕様が変わったらテストのメンテナンスが必要 → チームの意識が高くないと、すぐにテストが陳腐化してしまう ■Jenkinsとは • • • → フリーのCI(継続的インテグレーション)ツール GUI中心の直観的な操作で様々な設定が可能 Seleniumを始めとした様々なテストツールと連携が可能 予めテストケースを登録しておくと、 定期的に自動実行・結果通知・レポートの出力・ 履歴管理まで行ってくれる 3
  • 実行環境のイメージ テストコードを含む リソースを集約 コミット テスト コード 自動テスト担当 テスト 指示 バージョン管理 画面 キャプチャ メールやSkypeで フィードバック テスト レポート テスト用 クライアント テストレポートを表示 開発担当 テスト環境 本番環境 4
  • Seleniumのテストを補助してくれる 様々なプラグイン • • • • • • • • • Selenium AES plugin(549) Seleniumhq plugin(1712) Selenium Builder plugin(251) TestingBot Selenium plugin(105) seleniumhtmlreport plugin(1404) Selenium RC plugin(643) Selenium plugin(1118) Selenium Axis plugin(33) Selenium Grails plugin(不明) ※()内は2013年12月のダウンロード数 5
  • 何だかんだ言ってまだ現役 Selenium IDEを使っている場合 • • • • • • • • • Selenium AES plugin(549) Seleniumhq plugin(1712) Selenium Builder plugin(251) TestingBot Selenium plugin(105) seleniumhtmlreport plugin(1404) Selenium RC plugin(643) Selenium plugin(1118) Selenium Axis plugin(33) Selenium Grails plugin(不明) 6
  • IDEで記録・編集したHTMLを 設定するだけでテスト実行が可能 *firefox http://example.com suite/01.html result/01.html IDEでプラグインを使っている場合は 対応するJavaScriptの設定が必要。 その他、ポートの設定など -userExtensions userextensions.js -port 4445 7
  • 見慣れたテスト結果に加えて、 OK/NG数の遷移も見られる 青:OK 赤:NG 8
  • TestSuiteが多い場合は、 seleniumhtmlreport pluginで見やすく表示 9
  • Selenium2(WebDriver)を使っている場合 • • • • • • • • • Selenium AES plugin(549) Seleniumhq plugin(1712) Selenium Builder plugin(251) 明示的なSelenium用のプラグインは TestingBot Selenium plugin(105) 不要 seleniumhtmlreport plugin(1404) Selenium RC plugin(643) Selenium plugin(1118) Selenium Axis plugin(33) Selenium Grails plugin(不明) 10
  • xUnit形式のテスト結果を生成すれば 自動的にテストレポートが出来る  Javaの場合はAnt, Mavenなどのビルドツールから起動  他の言語でもたいていはプラグインが存在する  なければシェルスクリプト or Windowsバッチで代替 Mavenの場合 テスト実行 レポート生成 11
  • xUnit形式で出力することの利点  「いつからそのテストが失敗しているのか」すぐに分かる  Seleniumhq pluginでは出来ない機能  ソースコードの変更履歴と比較すれば、どのコミットで問 題が起きたかも分かる 12
  • Selenium Gridを使って並列テストを実行したい • • • • • • • • • Selenium AES plugin(549) Seleniumhq plugin(1712) Selenium Builder plugin(251) TestingBot Selenium plugin(105) seleniumhtmlreport plugin(1404) Selenium RC plugin(643) Selenium plugin(1118) Selenium Axis plugin(33) Selenium Grails plugin(不明) 13
  • Jenkinsのマスタ-スレーブ機能 × Selenium Grid たくさんのNodeを管理し、 いちいちサーバ起動するのは面倒 Node テスト用 クライアント テスト用 クライアント テスト用 クライアント Selenium Hub テスト用 クライアント 14
  • Selenium pluginを使った設定 ブラウザの種類などを設定するだけで、 簡単にSelenium Gridが完成 「selenium-client」という ラベルをつけたスレーブを SeleniumのNodeにする そのスレーブでは Firefoxを3インスタンス 起動する 15
  • JenkinsでSeleniumのテストをするときに 気をつけること  テスト環境はなるべく専用のものを用意する  繰り返しテスト実行しても問題ないように、データの初期 化の仕組みを作る  ジョブは機能のカテゴリごとに小分けにして作る  失敗したときに修正のモチベーションが湧きやすい  失敗の解析がしやすいよう、スクリーンショットをとる  JUnitの場合 http://softwaretest.jp/labo/tech/labo-298/ 16
  • まとめ Jenkinsで、Seleniumの魅力を 最大限に活用しよう!  Selenium IDE / WebDriverのテスト実行  レポート表示  Gridを使った並列テスト実行、マルチOS/ マルチブラウザテスト 17
  • ご清聴ありがとうございました! 18