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
Magic Podをもっと活用するために
Search
Nozomi Ito
August 27, 2020
Technology
0
560
Magic Podをもっと活用するために
第1回Magic Podユーザーミートアップ(2020/8/27)の発表資料です。
Nozomi Ito
August 27, 2020
Tweet
Share
More Decks by Nozomi Ito
See All by Nozomi Ito
ノーコードに学ぶE2Eテスト自動化ベストプラクティス
nozomiito
0
790
ノーコードE2Eテストで実現する高速開発
nozomiito
0
600
MagicPodで実現するE2Eテスト自動化
nozomiito
0
2.8k
MagicPod開発におけるテスト自動化とCI
nozomiito
0
700
最近のMagicPodまとめ
nozomiito
0
560
テスト自動化スタートアップがエバンジェリストを募集するワケ
nozomiito
0
260
MagicPodが取り組むテスト自動化最前線
nozomiito
0
440
ロケーターを学んでテスト自動化上級者を目指そう
nozomiito
1
6.2k
テスト自動化で起業した10年とテスト自動化普及の歴史を振り返る
nozomiito
4
2.2k
Other Decks in Technology
See All in Technology
エンジニア主導の企画立案を可能にする組織とは?
recruitengineers
PRO
1
320
いまからでも遅くない!コンテナでWebアプリを動かしてみよう!コンテナハンズオン編
nomu
0
180
マルチアカウント環境における組織ポリシーについて まとめてみる
nrinetcom
PRO
2
110
OPENLOGI Company Profile
hr01
0
60k
Ruby on Railsで持続可能な開発を行うために取り組んでいること
am1157154
3
180
入門 PEAK Threat Hunting @SECCON
odorusatoshi
0
190
自分のやることに価値を見出だせるようになり、挑戦する勇気をもらったベイトソンの考え / Scrum Fest Fukuoka 2025
bonbon0605
0
130
事業モメンタムを生み出すプロダクト開発
macchiitaka
0
110
x86-64 Assembly Essentials
latte72
4
620
Introduction to OpenSearch Project - Search Engineering Tech Talk 2025 Winter
tkykenmt
2
250
あなたが人生で成功するための5つの普遍的法則 #jawsug #jawsdays2025 / 20250301 HEROZ
yoshidashingo
2
420
開発者体験を定量的に把握する手法と活用事例
ham0215
0
150
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
Statistics for Hackers
jakevdp
797
220k
GraphQLの誤解/rethinking-graphql
sonatard
69
10k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Designing for Performance
lara
605
68k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
260
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1.1k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Facilitating Awesome Meetings
lara
53
6.3k
Optimizing for Happiness
mojombo
377
70k
Transcript
.BHJD1PEΛ ͬͱ׆༻͢ΔͨΊʹ ҏ౻ 53*%&/5$&0
"CPVUNF • ҏ౻ *UP/P[PNJ • גࣜձࣾ53*%&/5දऔక • ʮຊ4FMFOJVNϢʔβʔίϛϡχςΟʯӡӦ •
ஶॻ
53*%&/5ʹ͍ͭͯ ࠷ۙͷ৽ػೳհ ࠓޙͰ༧ఆ͍ͯ͠Δ৽ػೳ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ ΞδΣϯμ
53*%&/5ʹ͍ͭͯ ࠷ۙͷ৽ػೳհ ࠓޙͰ༧ఆ͍ͯ͠Δ৽ػೳ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ
53*%&/5ͷ͜Ε·Ͱ • ݄ ઃཱ - 4FMFOJVNࣗಈςετؔ࿈ͷίϯαϧαϙʔτडୗ։ൃ • ݄ .BHJD1PEαʔϏε։࢝ •
݄ ສԁͷࢿۚௐୡ - ΠϯΩϡϕΠτϑΝϯυ • ݄ ສԁͷՃࢿۚௐୡ - ΠϯΩϡϕΠτϑΝϯυɺϕϦαʔϒ 53*%&/5ʹ͍ͭͯ
.BHJD1PEͷ֤छใ 53*%&/5ʹ͍ͭͯ ఆظηϛφʔ • IUUQTUSJEFOURBDPOOQBTTDPN • ར༻ݕ౼தͷϢʔβʔ͚ 5XJUUFSΞΧϯτ • !53*%&/5*OD
• .BHJD1PEͷ৽ػೳใͳͲ 4MBDLνϟοτϧʔϜ • .BHJD1PEը໘Լ෦ʮνϟοτϧʔϜʯΑΓ • ؾܰʹ࣭Ͱ͖Δ
53*%&/5ʹ͍ͭͯ ࠷ۙͷ৽ػೳհ ࠓޙͰ༧ఆ͍ͯ͠Δ৽ػೳ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ
ศར͚ͩͲؾ͔Εʹ͍͘վળΛ த৺ʹհ ࠷ۙͷ৽ػೳհ
શൠ ࠷ۙͷ৽ػೳհ
ςετέʔεϥϕϧ ݄ • ςετͷཧ͕༰қʹ • ಛఆͷϥϕϧΛࢦఆ আ֎ ͯ͠Ұׅ࣮ߦՄೳʹ ࠷ۙͷ৽ػೳհ શൠ
ը૾ࠩൺֱ ݄ • ΦʔϓϯιʔεͷSFHDMJͱ࿈ܞ • IUUQTCMPHUSJEFOURBDPNSFHDMJNBHJD QPEFF ࠷ۙͷ৽ػೳհ શൠ
ςετ࣮ߦ8FC"1*ͷվળ ݄ ࠷ۙͷ৽ػೳհ શൠ • ςετઃఆ൪߸Λࢦఆͯ͠ςετ࣮ߦՄೳʹ • ઃఆը໘ଆͰϝϯςφϯεͰ͖Δ NBHJDQPEBQJDMJFOUCBUDISVO UPLFO\4&$3&5@"1*@50,&/^
PSHBOJ[BUJPO53*%&/5 QSPKFDU4BNQMF"QQ UFTU@TFUUJOHT@OVNCFS
6*ʮϦετܗࣜʯͷվળ ݄ • 6*ʹ͖ͪΜͱ໊લΛ͚ͭͯཧ͍ͯ͠Δ߹ʹศར ࠷ۙͷ৽ػೳհ શൠ
• ʮΫϥυʯʮ֎෦ΫϥυαʔϏεʯͰར༻Մೳ εέδϡʔϧ࣮ߦ ݄ ࠷ۙͷ৽ػೳհ શൠ
• ςετ࣮ߦதͰը໘Ωϟϓνϟ͕ग़ΔΑ͏ʹ ςετը໘Ωϟϓνϟվળ ݄ ࠷ۙͷ৽ػೳհ શൠ
• ਖ਼نදݱϚον ݄ • ࢛ଇԋࢉ ݄ • ࣌ܭࢉ ݄ •
ίϝϯτɾۭߦ ݄ ֤छίϚϯυͷՃ ࠷ۙͷ৽ػೳհ શൠ
࠷ۙͷ৽ػೳհ ϞόΠϧΞϓϦςετ
• J04γϛϡϨʔλ • "OESPJEΤϛϡϨʔλ
ΫϥυγϛϡϨʔλڧԽ ݄ ࠷ۙͷ৽ػೳհ ϞόΠϧΞϓϦςετ
• ઃఆͷϝϯςφϯε͕.BHJD1PEଆͷը໘ͰՄೳʹ • ֎෦Ϋϥυ࣮ػςετɺΫϩεςετՄೳʹ • IUUQTXXXTMJEFTIBSFOFUIJSPLPUBNBHBXBWFSJGJFE TUFQNBHJDQPE #JUSJTF࿈ܞϦχϡʔΞϧ ݄ ࠷ۙͷ৽ػೳհ
ϞόΠϧΞϓϦςετ テスト設定番号で指定された 実⾏設定を利⽤
࠷ۙͷ৽ػೳհ ϒϥβςετ
• $ISPNF 'JSF'PY &EHF 4BGBSJ *&Λཏ ΫϩεϒϥβରԠ ݄ ࠷ۙͷ৽ػೳհ ϒϥβςετ
• ֎෦Ϋϥυ্ͷ༷ʑͳϒϥβɾ04Λར༻Մೳ • 8FC"1*εέδϡʔϥ͔Β࣮ߦՄೳ 4BVDF-BCT#SPXTFS4UBDL࿈ܞ ݄ ࠷ۙͷ৽ػೳհ ϒϥβςετ SauceLabs BrowserStack
• ϞόΠϧ8FCαΠτͷςετ͕Մೳʹ • σεΫτοϓ$ISPNF্ͷΤϛϡϨʔγϣϯ ϞόΠϧΤϛϡϨʔγϣϯ ݄ ࠷ۙͷ৽ػೳհ ϒϥβςετ
53*%&/5ʹ͍ͭͯ ࠷ۙͷ৽ػೳհ ࠓޙͰ༧ఆ͍ͯ͠Δ৽ػೳ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ
ςετ࡞Λͬͱߴʹ ࠓޙͰ༧ఆ͍ͯ͠Δ৽ػೳ
ᶃςετฤूը໘্Ͱૢ࡞ ࠓޙͰ༧ఆ͍ͯ͠Δ৽ػೳ ςετ࡞Λͬͱߴʹ • ͱςετฤूը໘Λߦ͖དྷ͢ΔखؒΛݮ • ·ͣϞόΠϧΫϥυ͔Β
ᶄΠϯλϥΫςΟϒςετ࡞ ࠓޙͰ༧ఆ͍ͯ͠Δ৽ػೳ ςετ࡞Λͬͱߴʹ • ը໘͔ΒཁૉΛυϥοάυϩοϓͰ͖ΔΑ͏ʹ • ࣗಈه࠶ੜʹ͍ۙײ֮
ᶄΠϯλϥΫςΟϒςετ࡞ ࠓޙͰ༧ఆ͍ͯ͠Δ৽ػೳ ςετ࡞Λͬͱߴʹ • औಘࡁΈ6*͔ΒͷυϥοάυϩοϓҾ͖ଓ͖Մೳ • औಘࡁΈ6*ͷࣗಈར༻Ͱ6*ͷ૿େΛࢭ
ᶅΕͨΒΓ͍ͨ͜ͱ ࠓޙͰ༧ఆ͍ͯ͠Δ৽ػೳ ςετ࡞Λͬͱߴʹ • ը໘εΩϟϯͷߴԽ - "84ͷ(16͕҆͘ͳͬͨͷͰɺೖͰ͖Δ͔ • Ϋϥυૢ࡞ͷվળ
ͦͷଞ ࠓޙͰ༧ఆ͍ͯ͠Δ৽ػೳ • 4MBDL௨ • ͷେখൺֱ • ϒϥβςετελϯμʔυϓϥϯ8FCਃ͠ࠐΈՄೳʹ • 6*ϨΠΞτͷΠϚΠνͳ෦ͷվળ
IUUQTHJUIVCDPN.BHJD1PEKBQBOFTFJTTVFBOE EPDCMPCNBTUFS61$0.*/(@'&"563&4NE ͦͷଞ ࠷ۙͷ৽ػೳհ
53*%&/5ʹ͍ͭͯ ࠷ۙͷ৽ػೳհ ࠓޙͰ༧ఆ͍ͯ͠Δ৽ػೳ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ
ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ ᶃϦϦʔεલखಈςετͷࣗಈԽ ᶄϚϧνϒϥβςετ ᶅ$* ᶆຊ൪ڥࢹ
ᶃϦϦʔεલखಈςετͷࣗಈԽ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ • ݄ճҎ্ͷසͰςετ͢Δ߹ʹɺಛʹ༗ޮ • ͓͢͢ΊͷࣗಈԽ༏ઌॱҐ まずは正常系を カバー 運⽤してみて、 課題を洗い出す
異常系は 正常系のあと
ᶃϦϦʔεલखಈςετͷࣗಈԽ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ • ਖ਼ৗܥςετɺଞʹ৭ʑͳ༻్ʹ͑Δ - αʔόόʔδϣϯΞοϓͷޙͷجຊಈ࡞֬ೝ - Ϋϩεϒϥβςετɺ։ൃɾςετڥͷਖ਼ৗಈ࡞νΣοΫɺ ຊ൪ڥࢹ
ᶄϚϧνϒϥβςετ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ • ʮҰׅ࣮ߦςετʯΛ͞·͟·ͳύλʔϯͰ࣮ࢪ OSバージョン iPhone/iPad ブラウザ種類 ブラウザバージョン OSバージョン メーカー
iOS Android ブラウザ
ᶄϚϧνϒϥβςετ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ • ઃఆ Ϋϥυ֎෦Ϋϥυͷ߹ 並列数 • #JUSJTF8FC"1*͔Βݺͼग़͠Մೳ
ᶄϚϧνϒϥβςετ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ • ઃఆ ϩʔΧϧ1$ɺϞόΠϧΞϓϦςετͷ߹ • NBHJD@QPE@DPOGJHKTPOΛෳ༻ҙ • Ϋϥυͷํ͕खܰ \
lDBQBCJMJUJFTz\ lVEJEzlʜz ^ ʜ֤छϙʔτઃఆʜ ^ \ lDBQBCJMJUJFTz\ lVEJEzlʜz ^ ʜ֤छϙʔτઃఆʜ ^ magic_pod_config.json magic_pod_config.json
ᶅ$* ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ • ຖ൩ςετ࣮ߦ PS։ൃςετڥΛߋ৽͢Δͨͼʹ࣮ߦ • ෆ۩߹ʹ͙͢ʹؾ͚ΔͷͰɺ։ൃ͕ޮతʹ - ͕࣌ؒܦͭͱɺࢥ͍ग़͢ͷ͕େม -
ଟͷ։ൃऀͷमਖ਼͕ೖͬͨޙͩͱɺݪҼಛఆ͕େม • ৗʹΫϦʔϯͳڥͰ։ൃςετ͕Ͱ͖Δ - ࡞ۀޮΞοϓ
ᶅ$* ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ 最新のソースコードをもとに Webサーバを更新 or アプリをビルド Magic PodのWeb APIで テスト実⾏
最新のソースコードをもとに アプリをビルド Magic Podステップで テスト実⾏
ᶅ$* ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ • ςετ͕ଟ͍߹ɺϥϕϧͰ࣮ߦରΛߜΔ • ϒϥβύλʔϯΛར༻ͯ͠ฒྻԽ͢Ε͞Βʹ࣌ؒॖ
ᶆຊ൪ࢹ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ • ༧ظͤ͵ʹΑΓຊ൪ڥͰ͕ى͖͍ͯͳ͍͔ࢹ - ϝϞϦɺσΟεΫɺωοτϫʔΫɺαʔόμϯɺखಈ࡞ۀϛεɺFUD • ຊ൪ڥͱݕূڥͰɺσʔλɾαʔόઃఆɾΠϯϑϥ͕ҟ ͳΔͷͰɺຊ൪Ͱ͚͕ͩى͜Δ͜ͱ͋Δ
ᶆຊ൪ࢹ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ • ઃఆ ֎෦Ϋϥυɺϒϥβςετͷ߹ • 4BVDF-BCT#SPXTFS4UBDL εέδϡʔϧ࣮ߦͰ؆୯ • ՝ɿ࣮ߦ͢Δͨͼʹϝʔϧ௨͕ʜ
ᶆຊ൪ࢹ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ • ઃఆ ֎෦ΫϥυɺϞόΠϧΞϓϦςετͷ߹ • ֎෦Ϋϥυ࣮ػ ຊ൪༻ΞϓϦ εέδϡʔϧͰఆظ࣮ߦ •
৽͍͠ΞϓϦ͕ग़ͨΒɺ.BHJD 1PEʹ࠶Ξοϓϩʔυ
·ͱΊ ᶃϦϦʔεલखಈςετͷࣗಈԽ ᶄϚϧνϒϥβςετ ᶅ$* ᶆຊ൪ڥࢹ ޮՌ͕ग़Δ͓͢͢Ίӡ༻ํ๏બ
.BHJD1PE͕͞Βʹ օ༷ͷ͓ʹཱͯΔΑ͏ Ҿ͖ଓ͖͕ΜΓ·͢ʂ