Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Selenium による E2E テスト再入門 / Introduction to E2E T...
Search
Yu Kawanami
May 20, 2015
Technology
0
52
Selenium による E2E テスト再入門 / Introduction to E2E Testing with Selenium
社内ビアバッシュの発表資料
Yu Kawanami
May 20, 2015
Tweet
Share
More Decks by Yu Kawanami
See All by Yu Kawanami
数字で表すシリーズ 〜開発規模(工数⇔期間)の見積もり編②〜 / practice of estimate part2
kawanamiyuu
0
94
数字で表すシリーズ 〜開発規模(工数⇔期間)の見積もり編①〜 / practice of estimate part1
kawanamiyuu
0
120
開発チームの自走力を育む「イテレーションマネージャー」という取り組み / iteration manager
kawanamiyuu
1
1.5k
スタートアップで 1 度は崩壊しかけたチームがこれからチームになっていくための第一歩 / re-startup team
kawanamiyuu
2
910
PHP でもアーキテクチャテストしたい! / #phperkaigi / PHPerKaigi 2021
kawanamiyuu
6
4.8k
3 つの “はじめて” から始まった OSS 活動。のその先で / OSS LT会 #osscontributelt / turning point of joy as a developer
kawanamiyuu
0
770
腕力と瞬発力(新年の抱負 超LT会- vol.2 #ultral)/ New Year’s Resolution 2021
kawanamiyuu
2
420
ArchUnit で始める Java アプリケーションアーキテクチャの自動テスト / 自動化大好きエンジニアLT会 / LT for Engineers who love Automation
kawanamiyuu
0
890
マイクロサービスアーキテクチャをあきらめないための、モノリスで始めるアーキテクチャテスト / #jjug_ccc_b #ccc_b8 / JJUG CCC 2020 Fall
kawanamiyuu
5
3.7k
Other Decks in Technology
See All in Technology
【NoMapsTECH 2025】AI Edge Computing Workshop
akit37
0
230
品質視点から考える組織デザイン/Organizational Design from Quality
mii3king
0
210
AIがコード書きすぎ問題にはAIで立ち向かえ
jyoshise
1
250
人工衛星のファームウェアをRustで書く理由
koba789
15
8.3k
Apache Spark もくもく会
taka_aki
0
140
「Linux」という言葉が指すもの
sat
PRO
4
140
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
3
200
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
490
サラリーマンの小遣いで作るtoCサービス - Cloudflare Workersでスケールする開発戦略
shinaps
2
470
職種の壁を溶かして開発サイクルを高速に回す~情報透明性と職種越境から考えるAIフレンドリーな職種間連携~
daitasu
0
190
20250913_JAWS_sysad_kobe
takuyay0ne
2
250
新規プロダクトでプロトタイプから正式リリースまでNext.jsで開発したリアル
kawanoriku0
1
220
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
173
14k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Bash Introduction
62gerente
615
210k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Large-scale JavaScript Application Architecture
addyosmani
513
110k
GitHub's CSS Performance
jonrohan
1032
460k
Done Done
chrislema
185
16k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Building Applications with DynamoDB
mza
96
6.6k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Transcript
Seleniumによる E2Eテスト再入門 第7回ビアバッシュLT in なにわ at 2015.05.20 2015年5月度もくもく勉強会 at 2015.05.28
Yuu Kawanami RAKUS Co., Ltd.
目次 1. E2Eテスト とは 2. Selenium とは ◦ Selenium WebDriver
◦ Selenium IDE ◦ Selenium Grid 3. テスト作成(デモ) 4. テスト作成時の実践テクニックその1(デモ) ◦ Selenium IDEでの要素取得の優先順位 5. テスト作成時の実践テクニックその2(デモ) ◦ Page Object パターン
E2Eテスト とは End-to-End テスト = ユーザ視点でシステムが正しく動いていることを確認するテスト もう少し説明すると...
E2Eテスト とは リクエストがクライアント、たとえばブラウザから始まって、サーバ内で処理され、制御 が再度クライアントのほうに返ってくるという構成のときに、リクエストを投げてレスポ ンスが返ってくるまでの処理をブラックボックスとして捉え、大きく機能の入り口から出 口までの範囲のブラックボックステストを行うこと。 Webアプリケーション開発におけるE2Eテストとは、ブラウザへのユーザ操 作(入力)に対する、アプリケーションの振る舞いをテストすること。 (引用)第8回 テスト駆動開発の「サイクル」
―まず受け入れテストで土台を作る http://gihyo.jp/dev/serial/01/tdd/0008
E2Eテスト とは E2Eテストのコード化の目的、効果 • 人手では手間がかかり過ぎるバリエーションテストの自動化 ◦ テスト工数の削減 • 結合レベルの再帰テストの自動化 ◦
テスト工数の削減 ◦ デグレの早期発見 ◦ ユーザのメインシナリオに関わる機能の継続的テスト • 目先の品質向上というよりは、長い目で見たサービス品質の改善
参考:アジャイルテストの4象限 E2Eテストの範囲 http://quesqa.com/test_automation_selenium-grid/
Selenium とは Selenium WebDriver • Web Driver(=ブラウザのネイティブ API。W3Cで標準化が検討されている) を通して、プログ ラムからブラウザ操作をシュミレートする仕組み
• クロスブラウザ、クロスプラットフォーム Selenium IDE • Firefoxアドオン • ブラウザ操作を記録し、Seleniumのテストコードを自動生成してくれる
Selenium とは Selenium Grid • 複数のリモートマシン対して テストを自動で分散(並列) 実行させる仕組み http://quesqa.com/test_automation_selenium-grid/
Selenium とは Selenium WebDriverを利用した E2Eテストフレームワーク • selenium-java(Java) • capybara(Ruby) •
behat(PHP) • nightwatch.js(Javascript)
テスト作成 (Demo) 楽楽精算へのログイン
Selenium IDEでの要素取得の優先順位 テスト作成時の実践テクニックその1 参考:Selenium IDEの属性取得の優先順位変更方法 http://qiita.com/oh_rusty_nail/items/7fcc2d54d1abc5febe86
XPathを優先 CSSセレクタを優先
XPathを優先 CSSセレクタを優先 生成されたコード 生成されたコード
テスト作成時の実践テクニックその2 (Demo) Page Object パターン
最後に いつやるか? 今でしょ!!