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
MagicPodを使ったWebサイトとPWAアプリの自動テスト
Search
Nozomi Ito
November 16, 2022
Technology
530
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MagicPodを使った WebサイトとPWAアプリの自動テスト
PWA Night vol.45 ~テストツール〜
の登壇資料です。
Nozomi Ito
November 16, 2022
More Decks by Nozomi Ito
See All by Nozomi Ito
ノーコードに学ぶE2Eテスト自動化ベストプラクティス
nozomiito
0
1.1k
ノーコードE2Eテストで実現する高速開発
nozomiito
0
850
MagicPodで実現するE2Eテスト自動化
nozomiito
0
4.1k
MagicPod開発におけるテスト自動化とCI
nozomiito
0
930
最近のMagicPodまとめ
nozomiito
0
700
テスト自動化スタートアップがエバンジェリストを募集するワケ
nozomiito
0
390
MagicPodが取り組むテスト自動化最前線
nozomiito
0
560
ロケーターを学んでテスト自動化上級者を目指そう
nozomiito
1
9.8k
テスト自動化で起業した10年とテスト自動化普及の歴史を振り返る
nozomiito
4
2.8k
Other Decks in Technology
See All in Technology
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
400
会社説明資料
persolserverworks
0
9.7k
遠藤な_めぐろLT #38 「社内のAI活用推進」@麻布台_20261009
endonanana
0
130
【Data Engineering Summit2026_登壇資料】医療ビッグデータ×AIエージェントを支えるデータ基盤とハーネスエンジニアリング
jmdc_presentation
0
150
脆弱性診断って、何をしているの? 〜弱点を見つけて、会社の改善につなげるまで〜
keeg
0
900
Conditional PED-ANOVA: Hyperparameter Importance in Hierarchical & Dynamic Search Spaces
pfn
PRO
0
120
10年後、Engineering 行為を剥奪されるとして、わたしたちは、どう、何を創ればいいだろうか。 / If Engineering Is Taken Away in 10 Years, How and What Should We Create?
bitkey
PRO
1
170
スキマバイトという雇用形態は存在しないので、雇用期間1日のアルバイト契約を事業者とワーカーが結ぶ手続きを支えるのがタイミーなんです
akitoshiga
0
180
味覇で作るパスタが美味い - 20261001_yabaubuki.dev
livesense
PRO
0
130
Running Kotlin + Quarkus with Lambda
nealle
1
470
分析AIエージェントを育てる、動く環境を育てる
codatum
1
1k
使いこなすために知っておきたい Azure SRE Agent アンチパターン
torumakabe
2
500
Featured
See All Featured
How Software Deployment tools have changed in the past 20 years
geshan
2
35k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
77k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
360
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
600
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.6k
Statistics for Hackers
jakevdp
799
230k
Unsuck your backbone
ammeep
672
58k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
330
Building AI with AI
inesmontani
PRO
1
1.3k
Evolving SEO for Evolving Search Engines
ryanjones
0
320
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
730
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
Transcript
.BHJD1PEΛͬͨ 8FCαΠτͱ18"ΞϓϦͷࣗಈςετ 18"/JHIU
"CPVUNF • ҏ౻ *UP/P[PNJ • .BHJD1PE$&0 • ࣗಈςετπʔϧྺɿ •
4FMFOJVNίϛϡχςΟओ࠻ • 5XJUUFSɿ!JUP@OP[PNJ
.BHJD1PEͷ֓ཁ σϞ ػೳհ ϕετϓϥΫςΟε
.BHJD1PEͷ֓ཁ σϞ ػೳհ ϕετϓϥΫςΟε
.BHJD1PEͱ .BHJD1PEͷ֓ཁ • 8FCϞόΠϧΞϓϦͷςετࣗಈԽΫϥυαʔϏε • ϊʔίʔυͰ؆୯ʹςετ͕࡞Ͱ͖Δʂ • 5XJUUFSɿ !.BHJD1PE+1
ΤΩεύʔτ͕࡞ͬͨςετπʔϧ .BHJD1PEͷ֓ཁ ஶऀ ༁ऀ ొஃ
.BHJD1PEͷ֓ཁ ͝ར༻Ϣʔβʔ༷ IUUQTNBHJDQPEDPNDVTUPNFSTUPSJFT
Ϣʔβʔ༷ͷϒϩάεϥΠυ .BHJD1PEͷ֓ཁ .BHJD1PEɺ͜Μͳ͍ํͯ͠·͢ ʙڞ༗εςοϓฤʙ ΤϯϖΠਓ2"͕ ೖࣾͯ͠ϲ݄Ͱ͖ͬͯͨ͜ͱ .BHJD1PEʢ&&πʔϧʣΛಋೖͯ͠ ࣭ͱϦϦʔεසΛཱ͍྆ͯ͠Δ .BHJD1PEͰࣗಈԽΛ ര্͛ͨ͠ϋφγ
.BHJD1PEͰ&&ςετΛ࣮ͨ͠ ΞϓϦͷςετʹ .BHJD1PEΛಋೖ͍ͯ͠Δ
.BHJD1PEͷ֓ཁ σϞ ػೳհ ϕετϓϥΫςΟε
ରԠڥ ςετσʔλอଘઌ σϞ クラウド MagicPod クラウド ローカル 外部クラウド (※) モバイルアプリ
◦ ◦ ◦ Webサイト(デスクトップ) ◦ ◦ ◦ Webサイト(モバイルエミュレート) ◦ ◦ ◦ Webサイト(モバイル実機) ー ー ◦ ςετ࣮ߦڥ ˞#SPXFS4UBDL4BVDF-BCT)FBE4QJO
ରԠڥ ςετσʔλอଘઌ σϞ クラウド MagicPod クラウド ローカル 外部クラウド (※) モバイルアプリ
◦ ◦ ◦ Webサイト(デスクトップ) ◦ ◦ ◦ Webサイト(モバイルエミュレート) ◦ ◦ ◦ Webサイト(モバイル実機) ー ー ◦ ςετ࣮ߦڥ ˞#SPXFS4UBDL4BVDF-BCT)FBE4QJO
8FCαΠτςετ σεΫτοϓ σϞ
8FCαΠτςετ σεΫτοϓ σϞ σϞ https://youtu.be/jk7VqdjCVCU
ϞόΠϧΞϓϦςετ 18" σϞ
ϞόΠϧΞϓϦςετ 18" σϞ σϞ https://youtu.be/Ji94VYegpUg
18"ςετ r ٕज़ղઆ σϞ 18"Πϯετʔϧ 18"ىಈ 18"ૢ࡞
18"ςετ r ٕज़ղઆ σϞ 18"Πϯετʔϧ 18"ىಈ 18"ૢ࡞ $ISPNF ωΠςΟϒཁૉૢ࡞ ϗʔϜը໘
ωΠςΟϒཁૉλοϓ ωΠςΟϒ PS8FC7JFX ཁૉૢ࡞
.BHJD1PEͷ֓ཁ σϞ ػೳհ ϕετϓϥΫςΟε
ػೳհ ϞόΠϧΞϓϦ
ΫϥυγϛϡϨʔλ ػೳհ ϞόΠϧΞϓϦ • ϩʔΧϧڥΑΓ҆ఆɾߴ • ࣮ػ͡Όͳ͍ͷͰ͍҆ • J04ɺ"OESPJEʹରԠ
Ϋϥυ࣮ػ • #SPXTFS4UBDL 4BVDF-BCT )FBE4QJOͱ࿈ܞՄೳ ֎෦ αʔϏεͷܖ͕ඞཁ • աڈػछ͔Β࠷৽ػछ·Ͱ๛ͳἧ͑ ػೳհ
ϞόΠϧΞϓϦ SauceLabs BrowserStack
Ϋϩεςετ • ৭ʑͳόʔδϣϯػछͷΈ߹ΘͤͰฒྻྻ࣮ߦ ػೳհ ϞόΠϧΞϓϦ
֤छૢ࡞ • ͞·͟·ͳίϚϯυΛ༻ҙ ػೳհ ϞόΠϧΞϓϦ
֤छૢ࡞ ػೳհ ϞόΠϧΞϓϦ 画像アップロード フリーハンド図形描画 端末回転 スワイプ
֤छઃఆ ػೳհ ϞόΠϧΞϓϦ 地域 タイムゾーン 位置情報 ⾔語
8FC7JFXαϙʔτ • $PSEPWBΞϓϦ .POBDBΞϓϦʹରԠ ػೳհ ϞόΠϧΞϓϦ
ػೳհ 8FCαΠτ
Ϋϩεϒϥβ ػೳհ 8FCαΠτ • ֤छϒϥβʹରԠ ˞*&&EHFͷ*&Ϟʔυͱͯ͠ར༻ՄೳͰ͢ ϞόΠϧ8FCϒϥβ
.BHJD1PEΫϥυ ػೳհ 8FCαΠτ • ΫϥυͷϒϥβͰςετΛ࡞ɾ࣮ߦՄೳ
֎෦Ϋϥυ࿈ܞ • #SPXTFS4UBDL 4BVDF-BCT ͱ࿈ܞՄೳ ֎෦αʔϏεͷܖ ͕ඞཁ • ༷ʑͳϒϥβόʔδϣϯɾ04Ͱར༻Մೳ ػೳհ
8FCαΠτ SauceLabs BrowserStack
֤छϒϥβૢ࡞ • ͞·͟·ͳίϚϯυΛ༻ҙ ػೳհ 8FCαΠτ
ϑΝΠϧμϯϩʔυΞοϓϩʔυ ػೳհ 8FCαΠτ
4IBEPX%0.αϙʔτ ػೳհ 8FCαΠτ • 4BMFTGPSDFΞϓϦέʔγϣϯͷςετՄೳ
ػೳհ શൠ
νΣοΫ ػೳհ • ༷ʑͳ݅ͰظνΣοΫ
݅ذ ػೳհ • ʮμΠΞϩά͕ग़ͨͱ͖͚ͩλοϓ͢ΔʯͳͲͷ༻్ʹ
ڞ༗εςοϓ ػೳհ • ܁Γฦ͠ར༻͢Δॲཧڞ௨Խ
σʔλۦಈςετ ػೳհ • ύϥϝʔλΛม͑ͯɺಉ͡ςετΛԿ࣮ߦ
ϖʔδը૾ΛෳςετͰڞ༗ ػೳհ • 6*ϨϙδτϦɺ6*ϚοϓͷΑ͏ʹ͑Δ
ϩέʔλมߋ ػೳհ • ༷ʑͳީิ͔Β͖ͳͷΛબՄೳ
ࣗಈम෮ ػೳհ • 6*ʹมߋ͕ೖͬͨ߹ʹɺ"*͕ࣗಈͰεΫϦϓτΛमਖ਼
ม ػೳհ • ը໘্ͷͳͲΛอଘͯ͠ޙଓॲཧʹར༻Մೳ
ڞ༗ม ػೳհ • શςετͰڞ༗͞ΕΔύϥϝʔλ
γʔΫϨοτม ػೳհ • ϩάʹग़ͨ͘͠ͳ͍ϚεΩϯά
ม ػೳհ • ʮ໌ͷΛೖྗʯͳͲͷ༻్ʹ
γεςϜม ػೳհ • ಛఆͷϒϥβ04Ͱ͚ͩߦ͍͍ͨॲཧʹ
)551ϦΫΤετૹ৴ ػೳհ • %#ͷνΣοΫσʔλΫϦΞͳͲʹ
֤छϢʔςΟϦςΟίϚϯυ ػೳհ 数値⽐較 2段階認証突破 正規表現 四則演算
ςετέʔεϥϕϧ ػೳհ • ςετʹϥϕϧΛ༩Մೳ • ϥϕϧΛࢦఆ PSআ֎ ͯ͠ςετҰׅ࣮ߦՄೳ
εέδϡʔϧ࣮ߦ ػೳհ • ຊ൪ڥͷࢹͳͲʹ
ϝʔϧ௨ɾ4MBDL௨ ػೳհ • ςετ݁Ռͷڞ༗ʹ
$*࿈ܞ $JSDMF$* +FOLJOT ͳͲ ػೳհ • 8FC"1*ίϚϯυϥΠϯ࣮ߦͷػೳͰ࿈ܞՄೳ
$*࿈ܞ #JUSJTF ϞόΠϧ ػೳհ • #JUSJTF 4UFQͰ(6*ઃఆՄೳ
ίϝϯτ ػೳհ
ίϐʔɾషΓ͚ ػೳհ
ฤूΛݩʹ͢ɾΓ͢ ػೳհ
෦ςετ࣮ߦ ػೳհ
ը૾ࠩνΣοΫ ػೳհ • ը໘ϨΠΞτ่ΕͳͲΛݕग़Մೳ
ςετ݁Ռը໘Ωϟϓνϟμϯϩʔυ ػೳհ • ΤϏσϯεऔಘͳͲʹ
ϝϯόʔݖݶཧ ػೳհ • ϓϩδΣΫτ୯ҐͰͷݖݶઃఆ͕Մೳ
ΤϯλʔϓϥΠζηΩϡϦςΟ ػೳհ ドメインコントロール 接続元IP制限 SAMLシングルサインオン 固定接続元IP
ӳޠར༻Մೳ ػೳհ • ւ֎ͰΘΕ͍ͯ·͢
.BHJD1PEͷ֓ཁ σϞ ػೳհ ϕετϓϥΫςΟε
ຖࣗಈ࣮ߦ ϕετϓϥΫςΟε • ࠷৽ͷιʔείʔυΛຖϏϧυɾσϓϩΠ͠ɺςετΛ࣮ߦ • खಈͩͱɺ୲ऀɾମ੍͕มΘͬͨࡍʹ࣮ࢪ͞Εͳ͘ͳΓ͕ͪ • ϦϦʔεલ͚࣮ͩߦͩͱɺ͕ى͖ͨ࣌ʹ͕࣌ؒͳͯ͘์ஔ ͕ͪ͠ •
ຖͷมߋΛਵ࣌ө͍ͯ͘͠ํ͕ϝϯςφϯεқ͕͍
ΫϥυͰ࣮ߦ ϕετϓϥΫςΟε • .BHJD1PEΫϥυɺ#SPXTFS4UBDLɺ4BVDF-BCTͷ͍ͣΕ͔ • ϩʔΧϧ1$ͩͱɺτϥϒϧͰςετ࣮ߦʹ͕͔͔࣌ؒΓɺ৺ ཧతϋʔυϧ͕ߴ͘ͳΔ - ϞόΠϧ࣮ػͷଓτϥϒϧ -
.BHJD1PE%FTLUPQόʔδϣϯΞοϓͷτϥϒϧ - Ϛγϯڥτϥϒϧ
༏ઌॱҐΛ͚ͭͯࣗಈԽ͢Δ ϕετϓϥΫςΟε • ૣΊʹԿΒ͔ͷՌΛಘΔ͜ͱ͕ɺࣗಈԽఆணͷۙಓ • ༏ઌॱҐΛ͚ͭͯࣗಈԽ͢Δ͜ͱ͕େ まずは正常系を カバー 運⽤してみて、 課題を洗い出す
異常系は 正常系のあと
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ