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
20200730_Selenium+Capybaraで不安定なテストをPuppeteerで補強...
Search
Yusuke Iwaki
July 30, 2020
Programming
3.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20200730_Selenium+Capybaraで不安定なテストをPuppeteerで補強してみる
Yusuke Iwaki
July 30, 2020
More Decks by Yusuke Iwaki
See All by Yusuke Iwaki
Playwrightのソースコードに見る、自動テストを自動で書く技術
yusukeiwaki
15
7.1k
あなたのWebサービスはAIに自動テストしてもらえる?アクセシビリティツリーで読み解く、AIの『視点』
yusukeiwaki
1
8.9k
個人開発から公式機能へ: PlaywrightとRailsをつなげた3年の軌跡
yusukeiwaki
12
8.9k
Capybara+生成AIでどこまで本当に自然言語のテストを書けるか?
yusukeiwaki
7
5.8k
ChatGPTを個々人が使っていた組織から チームチャットにボットを棲まわせて みんなが活用する組織になるまでの変遷 ぜんぶ紹介しちゃいます
yusukeiwaki
0
3.4k
E2E testing on Rails 2023
yusukeiwaki
4
3.5k
Fukuoka.rb_0x100_LT.pdf
yusukeiwaki
0
460
Railsの システムテスト解剖学
yusukeiwaki
8
8k
RailsのSystem specから 🎭Playwrightを使う
yusukeiwaki
2
16k
Other Decks in Programming
See All in Programming
A2UI という光を覗いてみる
satohjohn
1
170
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
270
AIを活用したE2Eテスト実装効率化のあゆみ / ebisu-mobile-14-kotetu
kotetuco
0
160
Performance Engineering for Everyone
elenatanasoiu
0
250
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
430
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
330
エンジニア向け会社紹介/Findy Company Profile
findyinc
6
360k
Snowflake Summitでの新機能 CoCo / CoWork / snowflake-summit-2026-overall-what-new-coco
tatsuhiro
1
210
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
240
エージェンティックRAGにAWSで入門しよう!
har1101
9
1.9k
Vite+ Unified Toolchain for the Web
naokihaba
0
410
Oxcを導入して開発体験が向上した話
yug1224
4
370
Featured
See All Featured
The Curious Case for Waylosing
cassininazir
1
420
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Designing for humans not robots
tammielis
254
26k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
From π to Pie charts
rasagy
0
230
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.1k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
370
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Transcript
!:VTVLF*XBLJ
"CPVUNF w "OESPJE04վ ˠεϚϗΞϓϦΤϯδχΞ ɹˠαʔόʔαΠυΤϯδχΞ w 2"ͷܦݧͳ͠ 2
ˡ͍·͜͜
ࠓͷ͓ w &&ςετɺ4FMFOJVN$BQZCBSBศརɻ w ͰɺΑ͘λΠϜΞτΤϥʔʹͳΔɻ w Ͱɺ3VCZ͔ͩΒ1VQQFUFFS +4 ʹΓ͑Δͷ͠ΜͲ͍ 3
ˠQVQQFUFFSSVCZΛ࡞ͬͯɺڞଘͤͯ͞Έͨ
$BQZCBSB 34QFD 4
None
None
None
None
ࠔͬͨʜ w ͱ͖Ͳ͖ɺͳ͔ͥ%0.ཁૉΛ௫ΜͰ͘Εͳ͍ w ʮը໘ભҠʯʮ%0.มߋݕʯَ͕ w ͰɺϦτϥΠॲཧΛຖॻ͖ͨ͘ͳ͍ʜʂ 9
None
1VQQFUFFS w XBJU'PS/BWJHBUJPO w ը໘ભҠ͢Δ·Ͱͭ w ඵܦͬͯભҠ͠ͳ͚Ε/BWJHBUJPO&SSPS w XBJU'PS4FMFDUPS w
ಛఆͷ%0.ཁૉ͕ݱΕΔPSফ͑Δ·Ͱͭ w ඵͬͯμϝͳΒUJNFPVUFSSPS 11
*OTJEF1VQQFUFFS w XBJU'PS/BWJHBUJPO w -JGFDZDMF&WFOUϕʔεͰը໘ભҠͷݕ w TSDDPNNPO'SBNF.BOBHFSUT w XBJU'PS4FMFDUPS w
.VUBUJPO0CTFSWFSϕʔεͰ%0.ͷมߋݕ w TSDDPNNPO%0.8PSMEUT 12 JOJUͱ͔%0.$POUFOU-PBEFEͱ͔
ᘳ͡Όͳ͍͔ʂ
ͪΐͬͱ·ͬͯʁ
ݴޠͷน w $BQZCBSB3VCZ w 1VQQFUFFS+BWB4DSJQU 15
+FTU 1VQQFUFFSʹҠߦ͢Ε͍͍ʁ w ॾൠͷࣄʹΑΓ ฒྻϥϯμϜࢼݧΛ͞ΕΔͱςετ͕௨Βͳ͍ w ࣦഊ࣌ͷεΫϦʔϯγϣοτͱΕͳ͍ w TNPPUIDPEFKFTUQVQQFUFFS w
Ϟνϕʔγϣϯෆʜ w $BQZCBSBΛશ൱ఆ͍ͨ͠Θ͚Ͱͳ͍ w ςετέʔε͕ͩͱɺҠߦͦͷͷ͕͠ΜͲ͍ 16
ͦ͜Ͱʜ Puppeteer#connect
None
Έଟ͔ͬͨैདྷͷεΫϦϓτ
͜Μͳ;͏ʹॻ͚Δͱ࠷ߴʁ ैདྷͷॲཧͦͷ··
ݴޠͷนʜ w $BQZCBSB3VCZ w 1VQQFUFFS+BWB4DSJQU 21 page = browser.pages.first page.waitForSelector('#login_form')
None
None
SVCZDEQDVQSJUF ɾ4FMFOJVNͰͳ͘GFSSVNΛϕʔεʹͨ͠$BQZCBSBυϥΠό SVCZDEQGFSSVN ɾ3VCZͰ1VQQFUFFSΛ·ͶͨϥΠϒϥϦ ɾXBJU'PS4FMFDUPS ݱࡏ ະ࣮ ˠ4FMFOJVN $BQZCBSBͷิڧʹͳΒͳ͍ɻ 25
ํ͕ͳ͍ͷͰɺࣗͰpuppeteer-rubyΛ࡞ͬͨɻ
None
None
None
%&.0
QVQQFUFFSSVCZ w 4FMFOJVN $BQZCBSBͱڞଘՄೳ w XBJU@GPS@OBWJHBUJPO XBJU@GPS@TFMFDUPS͑Δ 31 ˠطଘςετͷऑ͍෦ΛิڧͰ͖Δʜ
None
/05QSPEVDUJPOSFBEZ w ࠔ͍ͬͯΔਓ͕͍ͨΒͬͯΈ͍ͯͩ͘͞ w ͥͻϑΟʔυόοΫ͍ͩ͘͞ 33 ˠ࣮༻ʹ͑͏Δঢ়ଶʹͳͬͨΒόʔδϣϯʹ͠·͢
αϯϓϧू IUUQTHJUIVCDPN:VTVLF*XBLJQVQQFUFFSSVCZFYBNQMFT ୯७ͳεΫϦʔϯγϣοτऔಘ IPUFMUFTUQMBOTQIFSFͷ༧ɾεΫϦʔϯγϣοτ
͋Γ͕ͱ͏͍͟͝·ͨ͠