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
一休.comのE2Eテスト事情 ~Selenium 3.0 対応~ /seleniumjp4_...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
shota akasaka
December 18, 2016
Programming
11
27k
一休.comのE2Eテスト事情 ~Selenium 3.0 対応~ /seleniumjp4_ikyu
2016年12月18日の第4回 日本Seleniumユーザーコミュニティ勉強会の発表資料です。
https://seleniumjp.connpass.com/event/45208/
shota akasaka
December 18, 2016
Tweet
Share
More Decks by shota akasaka
See All by shota akasaka
imgix導入で画像最適化とサイトスピード改善/imageoptimize_sitespeed_up_ikyu_with_imgix
shotaakasaka
4
15k
ブランチデプロイ環境で エンジニアが安心できる開発現場へ/branch-deploy-environment-for-engineers
shotaakasaka
2
1.5k
TensorFlowで競馬予想/developmentcamp20170212-yuigahama
shotaakasaka
0
2.3k
OSSコミッタになりたくて 〜古典部開発合宿 @ 京都〜/developmentcamp-kyoto
shotaakasaka
1
2.9k
一休.comのE2Eテスト事情 ~ギリギリ話せるところまで話します~ /cybozu_ikyu_e2e
shotaakasaka
25
16k
20151027_第1回 #Java騎士団 円卓会議
shotaakasaka
0
2.4k
20151020_Selenium勉強会@サイボウズ
shotaakasaka
12
10k
Other Decks in Programming
See All in Programming
技術検証結果の整理と解析をAIに任せよう!
keisukeikeda
0
130
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
300
Takumiから考えるSecurity_Maturity_Model.pdf
gessy0129
1
150
20260315 AWSなんもわからん🥲
chiilog
2
160
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
210
AWS×クラウドネイティブソフトウェア設計 / AWS x Cloud-Native Software Design
nrslib
16
3.3k
The free-lunch guide to idea circularity
hollycummins
0
270
AWS Infrastructure as Code の新機能 2025 総まとめ 〜SA 4人による怒涛のデモ祭り〜
konokenj
10
3.4k
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
3
920
ベクトル検索のフィルタを用いた機械学習モデルとの統合 / python-meetup-fukuoka-06-vector-attr
monochromegane
2
470
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
250
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
4
440
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
180
エンジニアに許された特別な時間の終わり
watany
106
240k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Ethics towards AI in product and experience design
skipperchong
2
230
Exploring anti-patterns in Rails
aemeredith
2
290
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
How to train your dragon (web standard)
notwaldorf
97
6.6k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.1k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
180
Transcript
ҰٳDPNͷ&&ςετࣄ d4FMFOJVNରԠd ୈճຊ4FMFOJVNϢʔβʔίϛϡχςΟษڧձ݄ גࣜձࣾҰٳࡔᠳଠ
ࣗݾհ w ࡔᠳଠʢ͔͔͋͞͠ΐ͏ͨʣ w ॓ധࣄۀຊ෦γεςϜ։ൃ෦ w ॓ധαΠτͷαʔϏε։ൃͬͯ·͢
΅͘ͱ4FMFOJVNίϛϡχςΟ w ୈճຊ4FMFOJVNϢʔβʔίϛϡχςΟษڧձ w ॳࢀՃ w ୈճຊ4FMFOJVNϢʔβʔίϛϡχςΟษڧձ w ελοϑͱ͓ͯ͠ख͍ w
ୈճຊ4FMFOJVNϢʔβʔίϛϡχςΟษڧձʢࠓճʣ w εϐʔΧʔͱͯ͠ࢀՃ w ୈճຊ4FMFOJVNϢʔβʔίϛϡχςΟษڧձ w ʁʁʁ
"HFOEB w ҰٳDPNͷ&&ӡ༻ࣄ w αʔϏε։ൃͱڞʹาΉ&& w 4FMFOJVNରԠ w ·ͱΊ
ҰٳDPNͷ&&ӡ༻ࣄ
લఏ w ҰٳDPNϗςϧɾཱྀؗͷ॓ധ༧αΠτͰ͢ w &$αΠτͰ༧͕ग़དྷͳ͍ͷக໋త w ػձଛࣦେ͖͍ w Ͱ༧ΛࢭΊΑ͏ͷͳΒɺɺɺ
֬ೝ͢Δςετʹ͍ͭͯ w ֬ೝ؍ w ਖ਼ৗʹʮ༧ʯʮมߋʯʮऔফʯ͕Ͱ͖Δ͜ͱ w ࢼݧέʔε w έʔεఔʢ༧ͱҰݴͰݴͬͯɺ͍ΖΜͳύλʔϯ͕͋Δʣ w
ࢼݧ࣮ࢪλΠϛϯά w 45ϦϦʔεޙ w ຊ൪ϦϦʔεޙ
΄Ͳલ
˞ϦϦʔεޙɺखಈͰ༧֬ೝΛ͍ͯ͠Δֆ
೦ɻɻɻ
ݱࡏ
4UBHJOHڥ 1SPEVDUJPOڥ
˞ϦϦʔεޙɺ&&Ͱ༧֬ೝΛ͍ͯ͠Δֆ
ݱࡏʹࢸΔ·ͰͷಓͷΓ
എܠɿ࣌ͷ։ൃݱ IUUQTTQFBLFSEFDLDPNLFOTVLFUBOBLBNPEBOOBYJBODIBOHOJTVSVUBNFOJTIJKJBOTJUBLPUP
ϢʔβʔʹՁΛಧ͚Δεϐʔυ্ w ςετͱ͍͏είʔϓͰݴ͑ w खಈ֬ೝ͍ͯ͠Δ࣌ؒΛݮ͍ͨ͠ w ͦͷ࣌ؒΛαʔϏε։ൃʹ͍͍ͨ w ϦϦʔεޙͷ༧֬ೝΛࣗಈԽ͠Α͏ w
4FMFOJVNͬͯ&&ςετಋೖ
1BHF0CKFDU%FTJHO 1BUUFSOͰ࡞Γ·ͨ͠
1BHF0CKFDU%FTJHO1BUUFSO w ΞϓϦέʔγϣϯͷը໘Λ̍ͭͷΦϒδΣΫτͱͯ͠ͱΒ͑ΔσβΠϯύλʔϯ w ίʔυΛେ·͔ʹ̎छྨʹׂ w ϖʔδΫϥεͷεΫϦϓτ w ը໘୯ҐͰ࡞ w
ϘλϯςΩετϑΟʔϧυͳͲͷ)5.-ཁૉΛཧ w ςετέʔεγφϦΦͷεΫϦϓτ w ϖʔδΫϥεͷϝιουΛݺͼग़͢ w )5.-ཁૉΛૢ࡞͠ͳ͍
͍ͯ͠Δͱ͜Ζ
1BHF#BTF$MBTT w ڞ௨ϝιου 4DSFFOTIPU ϒϥβόοΫFUD w ࢼݧέʔεಡΈࠐΈ
ڥຖͷઃఆϑΝΠϧ ςετର63-ಡࠐΉࢼݧέʔε͜͜ʹهड़͢Δ
ฒྻ࣮ߦߏ w ࢠͰ+PCΛ͚ͯɺฒྻͰ࣮ߦ w Ұͭͷࢠ+PCʹςετέʔεͭ w ࣮ߦ࣌ؒ4UBHJOHڥɿɺ1SPEVDUJPOڥɿ 1BSFOU +PC $IJME
+PC $IJME +PC $IJME +PC $IJME +PC $IJME +PC $IJME +PC $IJME +PC $IJME +PC $IJME +PC $IJME +PC $IJME +PC $IJME +PC $IJME +PC $IJME +PC
ৄ͘͠ɾɾɾ IUUQTTQFBLFSEFDLDPNTIPUBBLBTBLBDZCP[VJLZVFF
ͪΐͬͱ·ͱΊͯΈΔ w &$αΠτͷ༧Ͱ͖ͳ͍ͷக໋త w ͰɺຖճखಈͰ֬ೝ͢Δͷ͠ΜͲ͍ w ͍͟ɺࣗಈԽʂʂʂ w 1BHF0CKFDU%FTJHO1BUUFSOΛͬͯ w
ϝϯςφϯεੑΛߴΊΔͨΊʹ͢Δ w ฒྻ࣮ߦڥΛ࡞ͬͯɺ࣮ߦ࣌ؒ͘͢Δ
αʔϏε։ൃͱڞʹาΉ&&
എܠɿਐΉαʔϏε։ൃ w ̏΄Ͳલ w ҰٳDPNͷ॓ധαΠτҰͭͷେ͖ͳΞϓϦέʔγϣϯͩͬͨ w ΄Ͳલ w ΞϓϦέʔγϣϯׂ͠ϚΠΫϩαʔϏεԽ w
ϩάΠϯपΓͷγεςϜϦϓϨΠεΛ࣮ࢪ
ͦͷ݁Ռɾɾɾ w ϦϦʔεϑϩʔ͕ผʹͳΔ w ͜ΕʹΑͬͯੜͨ͡ w ೝূपΓͰͷো͠͠ɾɾɾ w $4 ΧελϚʔαϙʔτ
͔ΒͷϢʔβʔ͍߹Θͤɾɾɾ w ༧֬ೝ&&Ͱݕͨ͠Τϥʔ͕࣮ϩάΠϯىҼ w ݪҼͷΓ͚ʹ͕͔͔࣌ؒΔ
ղܾࡦɿϩάΠϯपΓͷ&&ಋೖ w ֬ೝ؍͕ҧ͏ w ༧ͱೝূ w ༧ɿʮ༧ɾมߋɾऔফ͕Ͱ͖Δ͜ͱʯ w ೝূɿʮϩάΠϯ͕Ͱ͖Δ͜ͱͰ͖ͳ͍͜ͱʯ w
ςετ࣮ࢪλΠϛϯά w ϩάΠϯػೳϦϦʔεલʢ4513%ʣ
ಋೖোนߴ͘ͳ͔ͬͨ w طଘͷ&&ʹ͔ͬͬͨܗͰ࡞͔ͬͨΒ w ඞཁͳ1BHF$MBTTͱ5FTU$BTFΛ࡞Ε0, w ֬ೝରͷը໘͕গͳ͍ͷॿ͔ͬͨ w ॓ധʙը໘ w
ೝূ ը໘
ಋೖޙͷޮՌ w ϩάΠϯػೳͷোݮ w $4͔Βͷ͍߹Θͤݮ w ༧ͱೝূͷΤϥʔΓ͚ w Ҏલ༧֬ೝ&&Ͱݕͨ͠ΤϥʔͷݪҼ͕ೝূʹ͋ͬͨ w
ͱ͍ͬͨ͜ͱͳ͘ͳΓɺΓ͚͕Ͱ͖ΔΑ͏ʹͳͬͨ
ͪΐͬͱ·ͱΊͯΈΔ w αʔϏε։ൃਐΉ w &&ςετରԠ͍ͯ͘͠ඞཁ͕͋Δ w ์ஔ͓ͯ͘͠ͱϝϯςφϯεෆೳʹͳΓ͔Ͷͳ͍ ʮαʔϏε։ൃͱڞʹาΉʯ
ͪΐͬͱ༨ஊ w વͰ͕͢ɺ4FMFOJVNສೳͰͳ͍ w ʮԿΛ֬ೝ͍͔ͨ͠ʯΛ໌֬ʹ্ͨ͠Ͱɺదͳ πʔϧΛબ͢Δ͖
࣮ࡍʹ͋ͬͨ ʮ.JYFE$POUFOUͷݕΛ4FMFOJVNͰΓ͍ͨʯ ʮ4FMFOJVNҎ֎ͷํ๏͋Δͱࢥ͏Αʯ IUUQTXXXKJUCJUDPNTTMDIFDL
4FMFOJVNରԠ
͢͜ͱ w ࣮ફಋೖ͢Δ্ͰϋϚͬͨϙΠϯτ w XBJUͷѻ͍ w QSPpMFͷઃఆ w ฒྻ࣮ߦ࣌ͷΤϥʔ w
ʹରԠͯ͠Կ͕มΘ͔ͬͨ
͜Ε͚ͩม͑ΕΠέΔʂ w HFDLPESJWFSͷύεઃఆ w 4FMFOJVN8FCESJWFS6QEBUF w 'JSFGPYόʔδϣϯΞοϓ ˞αϯϓϧίʔυɿ3VCZ ESJWFS4FMFOJVN8FC%SJWFSGPS pSFGPY
NBSJPOFUUFUSVF
ͦΜͳΘ͚ͳ͔ͬͨɾɾɾ
นͦͷ̍d8BJUͷѻ͍d w Ҏલ#BTF1BHFʹ*NQMJDJUXBJUࠐΊɺͳ ͔ͬͨ w ESJWFSNBOBHFUJNFPVUTJNQMJDJU@XBJUYY w &YQMJDJUXBJUΛͬͨํ͕҆ఆ͢Δ
นͦͷ̍d8BJUͷѻ͍d w #BTF1BHFʹ&YQMJDJUXBJUΛఆٛ w ֤1BHF$MBTTʹΤϨϝϯτͷΈ͢Α͏ʹ͢Δ w 5FTU$BTF͔Βݺͼग़͢ w ࣗը໘ભҠΟϯυҠಈʁ w
ٽ͘ٽ͘4MFFQ
นͦͷd1SPpMFͷઃఆd w HFDLPESJWFSʹͳͬͯɺQSPpMFͷઃఆํ๏มΘͬͨ #FGPSF QSPpMF4FMFOJVN8FC%SJWFS'JSFGPY1SPpMFOFX QSPpMF<HFOFSBMVTFSBHFOUPWFSSJEF>TPNFVTFSBHFOU ESJWFS4FMFOJVN8FC%SJWFSGPS pSFGPY QSPpMFQSPpMF
"GUFS QSPpMF4FMFOJVN8FC%SJWFS'JSFGPY1SPpMFOFX QSPpMF<HFOFSBMVTFSBHFOUPWFSSJEF>TPNFVTFSBHFOU QSPpMF#BTFFODPEF QSPpMFUP@T DBQBCJMJUJFT4FMFOJVN8FC%SJWFS3FNPUF$BQBCJMJUJFTpSFGPY NBSJPOFUUF USVF pSFGPY@PQUJPOT\[JQ\QSPpMFQSPpMF^^ ESJWFS4FMFOJVN8FC%SJWFSGPS pSFGPY EFTJSFE@DBQBCJMJUJFTDBQBCJMJUJFT
นͦͷd1SPpMFͷઃఆd w HFDLPESJWFSͷ'JSFGPYΦϓγϣϯ͔Βઃఆ w ؔ࿈ w IUUQTHJUIVCDPNNP[JMMBHFDLPESJWFSpSFGPYDBQBCJMJUJFT w IUUQTHJUIVCDPNNP[JMMBHFDLPESJWFSJTTVFT JTTVFDPNNFOU
นͦͷdฒྻ࣮ߦ࣌ͷΤϥʔd w ͋Δ͋Δʁ w ϩʔΧϧͰͷ୯ମ࣮ߦͳ͍͕ɺ$*͔Βͷฒྻ࣮ߦʹͨ͠ॠؒ ʹ͚͜·͘Δ w ࣮ࡍʹ͋ͬͨ w ϩʔΧϧͰಈ͔͢ʹͳ͍
w $*αʔό͔Βͷ୯ମ࣮ߦͳ͍ w +FOLJOT͔Βͷฒྻ࣮ߦͨ͠ࡍʹϒϥβ͢Β্ཱ͕ͪΒͳ͍
นͦͷdฒྻ࣮ߦ࣌ͷΤϥʔd w +FOLJOT͔Βग़ΔΤϥʔϩά w 1SPDFTTMFBLFEpMFEFTDSJQUPST w +FOLJOTͷɾɾɾͰͳ͔ͬͨ w 'JSFGPYͷฒྻ࣮ߦͩͱϒϥβ͢Βىಈ͠ͳ͔ͬͨ w
'JSFGPYʹԼ͛ͯɺฒྻ࣮ߦͨ͠Βɺղܾ ˞HFDLPESJWFS
นͦͷdฒྻ࣮ߦ࣌ͷΤϥʔd w ฒྻ࣮ߦͷ͠͞ w ݪҼ͕Ͳ͜ʹ͋Δͷ͔ɾΓ͚͕͍͠ w +FOLJOTͷΤϥʔʹݟ͑Δ͕ɺ'JSFGPYͷόʔδϣϯ͕Լ͛ͯղܾ w $*4FMFOJVNHFDLPESJWFSϒϥβFUDશͯΛٙΘͳ͍ͱ͍͚ ͳ͍
͓·͚d4FMFOJVN͕ىಈ͠ͳ͍d w MPDBMIPTU͕ۭ͍͍ͯΔ͔֬ೝ w 'JSFGPYىಈ࣌ʹ%&'"6-5@1035Λࢦఆ IUUQXXXSVCZEPDJOGPHFNTTFMFOJVNXFCESJWFS4FMFOJVN8FC%SJWFS'JSFGPY4FSWJDF
ʹ্͛ͯมΘͬͨ͜ͱ
ಛʹେ͖ͳมԽͳ͍ w ͍͘͢͝ͳͬͨΘ͚Ͱͳ͍ w ҆ఆੑؾ࣋ͪগ্͕ͬͨ͠ʁ w ݩʑɺͱ҆ఆੑͦΕͳΓʹอূ͞Ε͍ͯΔ w ͍ͤͨ͘͞ͳΒɺฒྻ্͛ͨํ͕࣮֬
Ͱɾɾɾ w Ͳ͔͜ͷλΠϛϯάͰόʔδϣϯΞοϓରԠඞཁ w ܥͷ··ӡ༻Λଓ͚ɺ์ஔ͠ɺϝϯςφϯεෆೳɾɾ ͳΜ͍ͯ͏ࣄଶى͜Δ͔͠Εͳ͍ w ࠓΔ͖͔ͱฉ͔ΕͨΒɺɺɺ w ผʹࠓΒͳ͍͍ͯ͘ͱࢥ͏
ͪΐͬͱ·ͱΊͯΈΔ w 4FMFOJVNରԠɾɾɾ w ࠓΒͳͯ͘Α͔ͬͨʢҰٳͷ߹ʣ w ରԠͨ݁͠ՌͷϝϦοτ͕ݟग़ͤͳ͍ w ϋϚͬͨϙΠϯτΛ͍͔ͭ͘հ͠·ͨ͠ w
8BJUͷѻ͍ w 1SPpMFͷઃఆ w ฒྻ࣮ߦͷΤϥʔશͯΛٙͬͨ΄͏͕͍͍
·ͱΊɿҰٳDPNͷ&&ςετࣄ w ༧ϩάΠϯͷ֬ೝ͕ϝΠϯ w ϢʔβʔʹՁΛಧ͚ΔͨΊ w αʔϏεͷࠜװͱͳΔػೳΛ֬ೝ͢Δ w ਐΉαʔϏε։ൃͱڞʹาΉ w
ΩϟονΞοϓ͠ͳ͍ͱ͍ͣΕɺϝϯςφϯεෆೳͳΜͯ͜ͱʹɾɾɾ w 4FMFOJVNରԠͷϝϦοτͦ͜·Ͱײ͡ͳ͔ͬͨ w ͰɺͲ͔͜ͰରԠ͢Δඞཁ͋Δ͔ɾɾɾ
࠷ޙʹɿ&&ςετܧଓӡ༻ͷϙΠϯτ w ҆ఆੑ w ΦΦΧϛগʹ͠ͳ͍͜ͱ ϦτϥΠॲཧೖΕΔͳΓ͢Δ w ٕज़తΩϟονΞοϓ όʔδϣϯΞοϓʁ
w ϝϯςφϯεੑ w 1BHF0CKFDU%FTJHO1BUUFSOͦ͏͕ͩɺίʔυΛॻ্͘Ͱͷجຊతͳ෦ҙ w ςετίʔυमਖ਼ํ๏ͳͲͷใڞ༗͢Δ w w ฒྻ࣮ߦ͕؊ ݁ہɺ͜ͷ̏ͭ
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠