Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Selenium完全に理解した
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
tsuemura
January 29, 2020
Programming
3.6k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Selenium完全に理解した
完全に理解した人達の「Web技術」Talk #1
https://easy2.connpass.com/event/161840/
tsuemura
January 29, 2020
More Decks by tsuemura
See All by tsuemura
AIに気持ちよく働いていただく技術.pdf
tsuemura
0
88
Breaking your system
tsuemura
0
1.5k
自分の軸足を見つけろ
tsuemura
3
1.7k
事業継続を支える自動テストの考え方
tsuemura
0
1.6k
テスト自動化ことはじめ(202412_オープンロジ版) / Enter the testing automation (2024 Dec, for OPENLOGI)
tsuemura
0
1.8k
E2Eテストのシナリオと抽象化の粒度の話.pdf
tsuemura
7
1.4k
テスト自動化ことはじめ
tsuemura
3
680
ようこそ、ソフトウェアテストの世界へ!
tsuemura
1
190
リーダブルなE2Eテストコードのための3つのC
tsuemura
7
1.3k
Other Decks in Programming
See All in Programming
そのリトライ、死んだコネクションを使い回していませんか ── GoのHTTPクライアントとHTTP/2を実プロダクト障害から学び直す
myus4a
0
290
AI活用は、個人から組織へ|マルチプレイヤーエージェントハーネス「QM」の社内活用事例 / AI use is moving from individuals to orgs
rkaga
1
270
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
380
Webの地図
yosuke_furukawa
PRO
6
4.8k
GitHubハンズオン講座 — 実務レベルのチーム開発のフローを身につけよう
junhat6
0
110
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
240
MVNOの申込からeSIM開通までをiOSアプリでつなぐ- 本人確認・MNP・通信事業者基盤をまたぐ実装
satotakeshi
0
490
一人だけ、Kiroが静止する日
hideg
0
130
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
2.4k
Snowflakeで業務アプリを作ろう。 Snowflakeのアプリ機能解説&実践ガイド
ayumu_yamaguchi
2
300
Go × SIMDで高速化するベクトル検索 ~ルーフラインモデルでSIMDが効く境界を探れ! ~
po3rin
1
4.1k
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
270
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1033
470k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
58k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
450
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Abbi's Birthday
coloredviolet
4
10k
The Pragmatic Product Professional
lauravandoore
37
7.5k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
470
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
250
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!