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.1k
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
0
340
テスト自動化ことはじめ(202412_オープンロジ版) / Enter the testing automation (2024 Dec, for OPENLOGI)
tsuemura
0
600
E2Eテストのシナリオと抽象化の粒度の話.pdf
tsuemura
6
640
テスト自動化ことはじめ
tsuemura
3
330
ようこそ、ソフトウェアテストの世界へ!
tsuemura
1
73
リーダブルなE2Eテストコードのための3つのC
tsuemura
7
1.1k
コンテキストとセマンティクスを意識してリーダブルなE2Eテストコードを書こう
tsuemura
12
28k
60分で学ぶE2Eテスト(実装編)
tsuemura
0
400
全部乗せフレームワーク CodeceptJS でE2Eテストを楽にしよう
tsuemura
7
5.3k
Other Decks in Programming
See All in Programming
楽しく向き合う例外対応
okutsu
0
130
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.3k
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
150
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
11
3.8k
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
510
『GO』アプリ バックエンドサーバのコスト削減
mot_techtalk
0
140
sappoRo.R #12 初心者セッション
kosugitti
0
250
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
620
ソフトウェアエンジニアの成長
masuda220
PRO
10
1.3k
Ruby on cygwin 2025-02
fd0
0
150
Rubyで始める関数型ドメインモデリング
shogo_tksk
0
110
『品質』という言葉が嫌いな理由
korimu
0
160
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
91
5.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
240
Speed Design
sergeychernyshev
27
790
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Optimizing for Happiness
mojombo
376
70k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Writing Fast Ruby
sferik
628
61k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
12
960
Navigating Team Friction
lara
183
15k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
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!