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完全に理解した
Search
tsuemura
January 29, 2020
Programming
0
3.2k
Selenium完全に理解した
完全に理解した人達の「Web技術」Talk #1
https://easy2.connpass.com/event/161840/
tsuemura
January 29, 2020
Tweet
Share
More Decks by tsuemura
See All by tsuemura
自分の軸足を見つけろ
tsuemura
2
700
事業継続を支える自動テストの考え方
tsuemura
0
830
テスト自動化ことはじめ(202412_オープンロジ版) / Enter the testing automation (2024 Dec, for OPENLOGI)
tsuemura
0
790
E2Eテストのシナリオと抽象化の粒度の話.pdf
tsuemura
6
750
テスト自動化ことはじめ
tsuemura
3
360
ようこそ、ソフトウェアテストの世界へ!
tsuemura
1
89
リーダブルなE2Eテストコードのための3つのC
tsuemura
7
1.1k
コンテキストとセマンティクスを意識してリーダブルなE2Eテストコードを書こう
tsuemura
12
29k
60分で学ぶE2Eテスト(実装編)
tsuemura
0
410
Other Decks in Programming
See All in Programming
Defying Front-End Inertia: Inertia.js on Rails
skryukov
0
480
AIコードエディタの基盤となるLLMのFlutter性能評価
alquist4121
0
210
Enterprise Web App. Development (1): Build Tool Training Ver. 5
knakagawa
1
110
Exit 8 for SwiftUI
ojun9
0
130
サービスレベルを管理してアジャイルを加速しよう!! / slm-accelerate-agility
tomoyakitaura
1
180
List とは何か? / PHPerKaigi 2025
meihei3
0
860
Road to RubyKaigi: Making Tinny Chiptunes with Ruby
makicamel
4
120
On-the-fly Suggestions of Rewriting Method Deprecations
ohbarye
1
1.9k
[NG India] Event-Based State Management with NgRx SignalStore
markostanimirovic
1
150
複雑なフォームの jotai 設計 / Designing jotai(state) for Complex Forms #layerx_frontend
izumin5210
3
810
状態と共に暮らす:ステートフルへの挑戦
ypresto
1
440
Preact、HooksとSignalsの両立 / Preact: Harmonizing Hooks and Signals
ssssota
1
1.5k
Featured
See All Featured
Embracing the Ebb and Flow
colly
85
4.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Facilitating Awesome Meetings
lara
54
6.3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Rails Girls Zürich Keynote
gr2m
94
13k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
The Invisible Side of Design
smashingmag
299
50k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
520
Designing for Performance
lara
608
69k
Transcript
Selenium完全に理解した Takuya Suemura @ Autify Inc.
⾃⼰紹介 末村 拓也(Takuya Suemura) QA / テスト⾃動化エンジニア というテスト⾃動化プラットフォームを作る会社で働いています
https://autify.com/ja/
テストしてる? https://martinfowler.com/bliki/TestPyramid.html
今⽇話すこと Webのテストによく使われる Selenium という技術の話
Seleniumとは すごい昔からあるブラウザ操作⾃動化フレームワーク 様々なブラウザを単⼀のAPIで操作できる 複数のマシンでE2Eテストを並列実⾏することができる いくつかの技術の複合体 Selenium WebDriver Selenium Grid Selenium
IDE
使う サーバを⽴てる必要があります Nodeなら selenium-standalone を使うと楽 $ npm install -g selenium-standalone
$ selenium-standalone install $ selenium-standalone start http://localhost:4444/wd/hub にサーバが⽴ちます
使う Selenium⾃体はブラウザの操作を抽象化しているだけなので、 実際にテストコードを書くときは 他のテストフレームワークを使うのが⼀般的です 例: Selenide(Java) Geb(Groovy) Capybara(Ruby) RobotFramework(Python) WebdriverIO(Node)
CodeceptJS(Node)
他のフレームワークと何が違うの? Seleniumはユーザーが実際に⾏う操作を⾃動化するところに重点を置いていて、それゆえにか ゆいところに⼿が届かないことがある 例えばCookieやGeolocationを編集できない ブラウザ上で任意のJavaScriptを実⾏できるのでそれで解決することもあるが、HTTPヘッダ の追加などは出来ない Seleniumは並列実⾏を強⼒にサポートしている ZaleniumやSelenoidのようなコンテナを使った並列実⾏をするためのサードパーティツールも 存在する なんやかんや実機のテストはSeleniumが強い
IEとか……
似たようなツールたち Puppeteer Cypress TestCafe PlayWright <- NEW! などなど
Enjoy Testing!