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
January 25, 2022
Programming
0
1.2k
Magic Podをさらに活用するために
第2回Magic Podユーザーミートアップ(2022/1/24)の発表資料です。
Nozomi Ito
January 25, 2022
Tweet
Share
More Decks by Nozomi Ito
See All by Nozomi Ito
ノーコードに学ぶE2Eテスト自動化ベストプラクティス
nozomiito
0
950
ノーコードE2Eテストで実現する高速開発
nozomiito
0
670
MagicPodで実現するE2Eテスト自動化
nozomiito
0
3.5k
MagicPod開発におけるテスト自動化とCI
nozomiito
0
790
最近のMagicPodまとめ
nozomiito
0
630
テスト自動化スタートアップがエバンジェリストを募集するワケ
nozomiito
0
310
MagicPodが取り組むテスト自動化最前線
nozomiito
0
490
ロケーターを学んでテスト自動化上級者を目指そう
nozomiito
1
8.1k
テスト自動化で起業した10年とテスト自動化普及の歴史を振り返る
nozomiito
4
2.4k
Other Decks in Programming
See All in Programming
ソフトウェア設計の実践的な考え方
masuda220
PRO
3
490
CSC509 Lecture 05
javiergs
PRO
0
300
私はどうやって技術力を上げたのか
yusukebe
43
17k
開発者への寄付をアプリ内課金として実装する時の気の使いどころ
ski
0
350
育てるアーキテクチャ:戦い抜くPythonマイクロサービスの設計と進化戦略
fujidomoe
1
150
Signals & Resource API in Angular: 3 Effective Rules for Your Architecture @BASTA 2025 in Mainz
manfredsteyer
PRO
0
100
CSC305 Lecture 04
javiergs
PRO
0
250
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
180
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
410
Go Conference 2025: Goで体感するMultipath TCP ― Go 1.24 時代の MPTCP Listener を理解する
takehaya
7
1.6k
Conquering Massive Traffic Spikes in Ruby Applications with Pitchfork
riseshia
0
150
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
500
Featured
See All Featured
Speed Design
sergeychernyshev
32
1.1k
BBQ
matthewcrist
89
9.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
The Invisible Side of Design
smashingmag
301
51k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Rails Girls Zürich Keynote
gr2m
95
14k
Docker and Python
trallard
46
3.6k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
How STYLIGHT went responsive
nonsquared
100
5.8k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Music & Morning Musume
bryan
46
6.8k
Transcript
.BHJD1PEΛ ͞Βʹ׆༻͢ΔͨΊʹ
"CPVUNF • ҏ౻ *UP/P[PNJ • .BHJD1PE$&0 • 5XJUUFS!JUP@OP[PNJ •
ʮຊ4FMFOJVNϢʔβʔίϛϡχςΟʯӡӦ • ஶॻ
࠷ۙͷ.BHJD1PEࣾ ࡢϦϦʔε͞Εͨ৽ػೳ ࠓޙ༧ఆ͍ͯ͠Δվળ .BHJD1PEϕετϓϥΫςΟε ΞδΣϯμ
࠷ۙͷ.BHJD1PEࣾ ࡢϦϦʔε͞Εͨ৽ػೳ ࠓޙ༧ఆ͍ͯ͠Δվળ .BHJD1PEϕετϓϥΫςΟε
ͷग़དྷࣄ ࠷ۙͷ.BHJD1PEࣾ 2021年6⽉ トップページ & ロゴリニューアル 7⽉ サービス強化のために3億円の資⾦調達 7⽉ 新プラン体系をリリース
12⽉ サービス名が”Magic Pod”から”MagicPod”に 2022年1⽉ 社名も”TRIDENT”から”MagicPod”に
.BHJD1PE͔Βͷൃ৴ ࠷ۙͷ.BHJD1PEࣾ ఆظηϛφʔ • IUUQTUSJEFOURBDPOOQBTTDPN • ར༻ݕ౼தͷϢʔβʔ͚ 5XJUUFSΞΧϯτ • !.BHJD1PE
• .BHJD1PEͷ৽ػೳใͳͲ 4MBDLίϛϡχςΟ • .BHJD1PEը໘Լ෦ʮνϟοτϧʔϜʯΑΓ • Ϣʔβʔಉ࢜ͷަྲྀ • .BHJD1PE͔Βͷൃ৴ ࠂɾোใؚΉ
࠷ۙͷ.BHJD1PEࣾ ࡢϦϦʔε͞Εͨ৽ػೳ ࠓޙ༧ఆ͍ͯ͠Δվળ .BHJD1PEϕετϓϥΫςΟε
ࡢϦϦʔε͞Εͨ৽ػೳ ศར͚ͩͲؾ͔Εʹ͍͘վળΛ ॏతʹհ
ϞόΠϧΞϓϦɾϒϥβڞ௨ ࡢϦϦʔε͞Εͨ৽ػೳ
ϦΞϧλΠϜ؆୯ςετ࡞ ݄ • ը໘ΩϟϓνϟΛҙࣝͤͣςετ͕࡞ΕΔ • ΫϥυͰͷΈར༻Մೳ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨ 要素検出ツール クラウドブラウザ
ϦΞϧλΠϜ؆୯ςετ࡞ ݄ • ݱࡏͷը໘͔ΒཁૉΛબΔ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
ϦΞϧλΠϜ؆୯ςετ࡞ ݄ • ཁૉબ ෦࣮ߦ Λ؆୯ʹ܁ΓฦͤΔ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
ϦΞϧλΠϜ؆୯ςετ࡞ ݄ • ը໘Ωϟϓνϟͱͷซ༻Մೳ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
ϦΞϧλΠϜ؆୯ςετ࡞ ݄ • ίϚϯυڞ༗εςοϓͷૠೖॊೈʹՄೳ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
ϦΞϧλΠϜ؆୯ςετ࡞ ݄ • σϝϦοτɿը໘Ωϟϓνϟ͕ཪͰͲΜͲΜ૿͍͑ͯ͘ - ը໘มߋ࣌ͷमਖ਼ɺϩέʔλखಈमਖ਼ɺࣗಈम෮ঝೝͳͲ͕໘ʹ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
6*ࣗಈཧػೳ ݄ • ૿͑͗ͨ͢6*Λ"*͕ͭʹ·ͱΊͯ͘ΕΔ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
6*ࣗಈཧػೳ ݄ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨ %FNP
6*ࣗಈཧػೳ ݄ • ςετ͕յΕͳ͍Α͏ʹ͏·͘6*Λ౷߹ͯ͘͠ΕΔ • ڞ༗6*Ϣʔβʔ໊͕લΛ͚ͨ6*ͳͲɺେࣄͦ͏ͳͷΛ Ͱ͖Δ͚ͩͯ͘͠ΕΔ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
ը૾ࠩνΣοΫ ݄ • ը໘σβΠϯͷ่ΕΛݕग़Մೳ • ৭ʑͳ߲ͷͷνΣοΫ͕ɺίϚϯυͰ·ͱΊͯͰ͖Δ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
ը૾ࠩνΣοΫ ݄ • ਖ਼ղը૾ͱͷҧ͍͕ੜ͡Δͱςετ݁Ռ͕ʮཁ֬ೝʯʹ • ϐΫηϧ୯ҐͷൺֱͳͷͰɺຖճಉ͡ڥͰͷ࣮ࢪ͕Φεεϝ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
ը૾ࠩνΣοΫ ݄ • ࠂσʔλͳͲɺಈతʹมΘΔ෦ൺֱআ֎Մೳ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨ 除外エリア 除外エリア
Ұׅ࣮ߦ݁Ռ໊ͷಈతͳมߋ ݄ • $*ͷϏϧυ൪߸ͳͲΛ༩Մೳ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
Ұׅ࣮ߦ݁Ռ໊ͷಈతͳมߋ ݄ • ઃఆྫ ϞόΠϧΞϓϦςετ#JUSJTFεςοϓ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
Ұׅ࣮ߦ݁Ռ໊ͷಈతͳมߋ ݄ • ઃఆྫ NBHJDQPEBQJDMJFOU ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨ SETTINGS="{\"test_settings_name\":\"Daily CI Test
#$BUILD_ID\"}" magic-pod-api-client batch-run … -S 設定番号 -s "$SETTINGS"
ςετະྃͰ్தͷϩά͕ݟΒΕΔ ݄ • ςετ͕ݻ·ͬͯ͠·ͬͨ࣌ͷௐࠪʹ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
ར༻ঢ়گ֬ೝϖʔδ ݄ • ͋ͱͲͷ͘Β͍ςετΛ࡞ΕΔ͔͔Δ • ৫ͷཧऀͰ֬ೝՄೳ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
࠷ऴߋ৽࣌ɾϢʔβʔ ݄ • ʮ͜ͷςετɺ୭͔͕मਖ਼ͨ͠ ʯͱࢥͬͨ࣌ʹཱͭ ࡢϦϦʔε͞Εͨ৽ػೳ ڞ௨
ϞόΠϧΞϓϦςετ ࡢϦϦʔε͞Εͨ৽ػೳ
Ґஔใͷࢦఆ ݄ • Ґஔใ͔ΒۙͷεϙοτΛݕࡧ͢ΔΞϓϦͷςετʹ ࡢϦϦʔε͞Εͨ৽ػೳ ϞόΠϧΞϓϦ
ϩά ݄ • ΞϓϦΫϥογϡͷݪҼௐࠪʹཱͭ • ΞϓϦ͕ग़ྗ͢ΔϩάΛ֬ೝͰ͖Δ ࡢϦϦʔε͞Εͨ৽ػೳ ϞόΠϧΞϓϦ
Ϋϥυ"OESPJEͷBSNରԠ ݄ • ʮΤϛϡϨʔλ BSNWB ʯͳΒɺ࣮ػ༻"1,͕ ΫϥυͰಈ͘ • .BHJD1PE༻ʹY͚"1,Λ༻ҙ͢Δඞཁφγ ࡢϦϦʔε͞Εͨ৽ػೳ
ϞόΠϧΞϓϦ
ϒϥβςετ ࡢϦϦʔε͞Εͨ৽ػೳ
• )5.-ଐੑηοτɾऔಘ ݄ • ϩʔΧϧɾηογϣϯετϨʔδ ݄ • ϒϥβݴޠઃఆ ݄ •
ϞόΠϧͷ͖ ݄ ֤छίϚϯυɾઃఆͷՃ ࡢϦϦʔε͞Εͨ৽ػೳ ϒϥβ
• ηογϣϯ͕ࠞࡏ͠ͳ͍ͳΒɺෳϢʔβʔͷϝοηʔδͷ ΓऔΓͷςετͳͲՄೳ ͭͷλϒΛߦ͖དྷ͢Δςετ ݄ ࡢϦϦʔε͞Εͨ৽ػೳ ϒϥβ
• JEͰͷཁૉಛఆ͕͍͠3FBDUΛͬͨ8FCαΠτͷςετʹ EBUBUFTUJEΛೝࣝ͢ΔΑ͏ʹ ݄ ࡢϦϦʔε͞Εͨ৽ػೳ ϒϥβ
ΤϯλʔϓϥΠζϓϥϯ ࡢϦϦʔε͞Εͨ৽ػೳ
• Ϋϥυɾϒϥβ͕ࣾαʔόʹΞΫηε͢Δ࣌ͷ*1ΛϢʔβ ʔݻ༗ͷͷʹͰ͖Δ • .BHJD1PE͔ΒࣾαʔόͷΞΫηεΛΑΓηΩϡΞʹڐՄͰ͖Δ Ϣʔβʔಠࣗͷݻఆ*1 ݄ ࡢϦϦʔε͞Εͨ৽ػೳ ΤϯλʔϓϥΠζ
• ཧऀ͕৽نϢʔβʔΛ࡞ͯ͠টͰ͖Δ • ଞͷ৫ʹଐ͢Δ͜ͱΛېࢭͰ͖Δ ৫ઐ༻Ϣʔβʔ ݄ ࡢϦϦʔε͞Εͨ৽ػೳ ΤϯλʔϓϥΠζ
࠷ۙͷ.BHJD1PEࣾ ࡢϦϦʔε͞Εͨ৽ػೳ ࠓޙ༧ఆ͍ͯ͠Δվળ .BHJD1PEϕετϓϥΫςΟε
࣮ػϞόΠϧϒϥβςετ ࠓޙ༧ఆ͍ͯ͠Δվળ • ϒϥβςετϓϥϯͰఏڙ • #SPXTFS4UBDL4BVDF-BCTͷܖ͕ผ్ඞཁ
ςετ݁Ռ4MBDL௨ઃఆ ࠓޙ༧ఆ͍ͯ͠Δվળ • ֤Ϣʔβʔ͕࡞ΓࠐΈΛ͠ͳͯ͘ࡁΉΑ͏ʹ
ςετ݁Ռ4MBDL௨ઃఆ ࠓޙ༧ఆ͍ͯ͠Δվળ • ݁Ռεςʔλε͝ͱʹɺ௨༗ແɾ௨ઌࢦఆՄೳ
ϔϧϓϖʔδվળ ࠓޙ༧ఆ͍ͯ͠Δվળ • ྺ࢙తܦҢͰ͔ΓͮΒ͘ͳ͍ͬͯΔՕॴͳͲɺ৭ʑվળ
Ϣʔβʔ༷ಋೖࣄྫ֦ॆ ࠓޙ༧ఆ͍ͯ͠Δվળ • طଘϢʔβʔ༷ʹࢀߟʹͳΔใͩͱࢥ͏ͷͰ
ͦͷଞ ࠓޙ༧ఆ͍ͯ͠Δվળ • ςετฤूը໘ͱҰׅ࣮ߦը໘Ͱςετઃఆڞ༗ • ΫϥυڥͷରԠϒϥβ֦େ 'JSFGPY &EHF ʜ
ͦͷଞ ࠓޙ༧ఆ͍ͯ͠Δվળ • ςετέʔεฤूཤྺ - Ͱ͖ΕόοΫΞοϓɾϒϥϯνཧ • ϚϧνϓϥοτϑΥʔϜςετ - ϒϥβςετͱϞόΠϧΞϓϦςετͷࠞࡏ
• 'MVUUFSΞϓϦʹରԠ - ࠷ۙ͋·Γʹ͍߹Θ͕ͤଟ͍ͷͰ
IUUQTHJUIVCDPN.BHJD1PEKBQBOFTFJTTVFBOE EPDCMPCNBTUFS61$0.*/(@'&"563&4NE ͦͷଞ ࠓޙ༧ఆ͍ͯ͠Δվળ
࠷ۙͷ.BHJD1PEࣾ ࡢϦϦʔε͞Εͨ৽ػೳ ࠓޙ༧ఆ͍ͯ͠Δվળ .BHJD1PEϕετϓϥΫςΟε
Ұ൪࣮ફͯ͠ཉ͍ͭ͠ͷ͜ͱ .BHJD1PEϕετϓϥΫςΟε ຖࣗಈ࣮ߦ ΫϥυͰ࣮ߦ
ຖࣗಈ࣮ߦ .BHJD1PEϕετϓϥΫςΟε • ࠷৽ͷιʔείʔυΛຖϏϧυɾσϓϩΠ͠ɺςετΛ࣮ߦ • खಈͩͱɺ୲ऀɾମ੍͕มΘͬͨࡍʹ࣮ࢪ͞Εͳ͘ͳΓ͕ͪ • ϦϦʔεલ͚࣮ͩߦͩͱɺ͕ى͖ͨ࣌ʹ͕࣌ؒͳͯ͘์ஔ ͕ͪ͠ •
ຖͷมߋΛਵ࣌ө͍ͯ͘͠ํ͕ϝϯςφϯεқ͕͍
ΫϥυͰ࣮ߦ .BHJD1PEϕετϓϥΫςΟε • .BHJD1PEΫϥυɺ#SPXTFS4UBDLɺ4BVDF-BCTͷ͍ͣΕ͔ • ϩʔΧϧ1$ͩͱɺτϥϒϧͰςετ࣮ߦʹ͕͔͔࣌ؒΓɺ৺ ཧతϋʔυϧ͕ߴ͘ͳΔ - ϞόΠϧ࣮ػͷଓτϥϒϧ -
.BHJD1PE%FTLUPQόʔδϣϯΞοϓͷτϥϒϧ - Ϛγϯڥτϥϒϧ
༏ઌॱҐΛ͚ͭͯࣗಈԽ͢Δ .BHJD1PEϕετϓϥΫςΟε • ૣΊʹԿΒ͔ͷՌΛಘΔ͜ͱ͕ɺࣗಈԽఆணͷۙಓ • ༏ઌॱҐΛ͚ͭͯࣗಈԽ͢Δ͜ͱ͕େ まずは正常系を カバー 運⽤してみて、 課題を洗い出す
異常系は 正常系のあと
ςετؒͷґଘؔΛݮΒ͢ .BHJD1PEϕετϓϥΫςΟε • ͔Γʹ͍͘Τϥʔ͕ݮΔ • ࣦഊΓ͚ͷқ͕Լ͕Δ • ࣮ݱ͍͢͠Α͏ɺ.BHJD1PEଆվળ͍͖͍ͯͨ͠
ڞ༗εςοϓΛੵۃతʹ͏ .BHJD1PEϕετϓϥΫςΟε • ը໘͕େ͖͘มΘͬͨ࣌ͷϝϯςφϯεָ͕ • ࣗಈम෮ ݱঢ় ͋ΒΏΔέʔεʹ༗ޮͰͳ͍
ϩέʔλʔʹֶ͍ͭͯͿ .BHJD1PEϕετϓϥΫςΟε • ϩέʔλʔฤूͰ͖Δͱɺը໘มߋʹΑΓڧ͍ςετ͕࡞ΕΔ • จ๏ʹֶ͍ͭͯΔίϯςϯπ - IUUQTRJJUBDPNSMMMMIPJUFNTDCDFDGCGDB - IUUQCMPHCBOHCPPDPNTVCYQBUIIUNM
• .BHJD1PEଆͷίϯςϯπɾػೳڧԽ͍ͨ͠
ςετ͍͢͠ΞϓϦέʔγϣϯʹ͢Δ .BHJD1PEϕετϓϥΫςΟε • มΘΓʹ͍͘ϢχʔΫ*%Λ6*ཁૉʹ༩͢Δ • ςετڥͰࣗಈςετ͍͢͠ઃఆʹ͢Δ - 8FC7JFXσόοά༗ޮԽ - ࣗಈԽ͠ʹ͍͘ػೳΛᷖճ͢Δํ๏Λ༻ҙ
• σʔλΛऔಘɾૢ࡞Ͱ͖Δ8FC"1*Λ༻ҙ - σʔλͷΫϦΞ - ॳظσʔλͷηοτΞοϓ - ෦*%ͷऔಘ
લճͷࢿྉࢀߟʹͳΓ·͢ .BHJD1PEϕετϓϥΫςΟε IUUQTTQFBLFSEFDLDPNOP[PNJJUPNBHJD QPEXPNPUVUPIVPZPOHTVSVUBNFOJ
ΑΖ͓͘͠ئ͍͠·͢ʂ