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
マイクロサービスアーキテクチャへのIntegration Test導入のすゝめ (ソフトウェア...
Search
Hiroms
December 19, 2023
Technology
5.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
マイクロサービスアーキテクチャへのIntegration Test導入のすゝめ (ソフトウェアテスト自動化カンファレンス2023)
ソフトウェアテスト自動化カンファレンス2023登壇時の資料です
Hiroms
December 19, 2023
More Decks by Hiroms
See All by Hiroms
誤差を上手に扱いたい (S-Mat Tech Night 2024/12/10)
hiroms
0
360
Other Decks in Technology
See All in Technology
データエンジニアの次の戦場は "プロセスエンジニアリング"
sansantech
PRO
1
110
しろおびから始める!ログ活用の第一歩
shumei_ito
0
960
会社紹介資料 / Sansan Company Profile
sansan33
PRO
31
430k
ウォンテッドリーの最近のプロダクトと技術の紹介
stomk
0
130
夫婦で子育てするための育児標準化
codmoninc
PRO
0
460
Browser Spec: Testing Hotwire with Ruby
takahashim
1
130
DBについての基礎説明(MySQL編) - コロプラ 2026年度 新卒研修
colopl
0
130
Kiro Crewをはじめよう
kizawa2020
1
160
Optunaの最新リリースv5.0について
pfn
PRO
0
120
スキマバイトという雇用形態は存在しないので、雇用期間1日のアルバイト契約を事業者とワーカーが結ぶ手続きを支えるのがタイミーなんです
akitoshiga
0
210
アウトプット初心者、半年間のふりかえり
4o1sobblue
0
450
NDIでApple Vision Proにリアルタイム映像送信
jyouryuusui
0
130
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
500
What the history of the web can teach us about the future of AI
inesmontani
PRO
2
740
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Amusing Abliteration
ianozsvald
1
350
The Cost Of JavaScript in 2023
addyosmani
55
10k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.4k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
570
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Rails Girls Zürich Keynote
gr2m
96
14k
Optimising Largest Contentful Paint
csswizardry
37
4k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
270
Transcript
ϚΠΫϩαʔϏεΞʔΩςΫνϟͷ Integration Test ಋೖͷ͢ʍΊ ~ιϑτΣΞςετࣗಈԽΧϯϑΝϨϯε2023~ (ג)εϚʔτγϣοϐϯά ΤϯδχΞ ౡେ
ձࣾհ/ࣗݾհ • εϚʔτγϣοϐϯάͱ͍͏ձࣾͰɹ όοΫΤϯυΤϯδχΞ͍ͯ͠·͢ • ॏྔϕʔεͰࡏݿཧ͢ΔϓϩμΫτΛ ͍ͭͬͯ͘·͢ • ZennʹςετؔͷهࣄΛ͍͔ͭ͘✏ɹ hiromsͰݕࡧͯ͠Έ͍ͯͩ͘͞👀
• https://zenn.dev/hiroms
࣍ • ๊͍͑ͯͨ՝ײ😫 • Integration Test ಋೖ/ӡ༻Ͱͷ💡 • Integration Test
ಋೖޙͷੈք🌏 • ·ͱΊ👀
࣍ • ▶︎ ๊͍͑ͯͨ՝ײ😫 • Integration Test ಋೖ/ӡ༻Ͱͷ💡 • Integration
Test ಋೖޙͷੈք🌏 • ·ͱΊ👀
๊͍͑ͯͨ՝ײ😫
๊͍͑ͯͨ՝ײ • ϚΠΫϩαʔϏεΞʔΩςΫνϟಛ༗ͷ͠͞
๊͍͑ͯͨ՝ײ • ϚΠΫϩαʔϏεΞʔΩςΫνϟಛ༗ͷ͠͞ • ͋Δॲཧ͕ෳͷαʔϏεɺϓϩηεΛ ·͕͓ͨͬͯ͜ΘͳΘΕΔ͜ͱ͕͋Δ
๊͍͑ͯͨ՝ײ • ϚΠΫϩαʔϏεΞʔΩςΫνϟಛ༗ͷ͠͞ • ͋Δܭࢉ݁ՌΛಘΔॲཧ͕ෳͷαʔϏεɺϓϩηε Λ·͕͓ͨͬͯ͜ΘͳΘΕΔ • ྫ: ฐࣾͷࡏݿཧϓϩμΫτॏྔΛଌఆ͠ ࡏݿΛਪఆ͢Δɻ͜ͷਪఆͷ݁ՌΛಘΔͷ
ʹ͘ෳࡶͳखଓ͖ΛܦΔ
๊͍͑ͯͨ՝ײ • ϚΠΫϩαʔϏεΞʔΩςΫνϟಛ༗ͷ͠͞ • ͋Δܭࢉ݁ՌΛಘΔॲཧ͕ɺෳͷαʔϏεɺϓϩηεΛ·͕ͨͬ ͓ͯ͜ΘͳΘΕΔ • ྫ: ฐࣾͷࡏݿཧϓϩμΫτॏྔΛଌఆͯ͠ࡏݿΛਪఆ͢ Δɻ͜ͷਪఆͷ݁ՌΛಘΔͷʹ͘ෳࡶͳखଓ͖ΛܦΔ
• ಛఆͷܭࢉͷϩδοΫʹUTΛॻ͍ͯɺ ࡏݿͷਪఆɺͱ͍͏ػೳશମΛςετͰ कΕ͍ͯΔ͔ෆ҆😫
๊͍͑ͯͨ՝ײ • ը໘ܖػͷE2EͰΧόʔͰ͖ͳ͍ൣғʹɹɹ ॏཁͳػೳ͕͋Δ
๊͍͑ͯͨ՝ײ • ը໘ܖػͷE2EͰΧόʔͰ͖ͳ͍ൣғʹॏཁͳػೳ͕͋Δ • લܝͷࡏݿਪఆॏཁͳػೳͰ͋Δ͕ɺ IoTσόΠεܖػͷॲཧ
๊͍͑ͯͨ՝ײ • ը໘ܖػͷE2EͰΧόʔͰ͖ͳ͍ൣғʹॏཁͳػೳ͕͋Δ • લܝͷࡏݿਪఆॏཁػೳͰ͋Δ͕ɺIoTσόΠεܖػͷॲཧ • ·ͨɺͦͷࡏݿਪఆͷ݁ՌΛड͚ͨൃ JOBͱ͍͏ͷ͕͋Γɺ͜Εॏཁػೳ
๊͍͑ͯͨ՝ײ • ը໘ܖػͷE2EͰΧόʔͰ͖ͳ͍ൣғʹॏཁͳػೳ͕͋Δ • લܝͷࡏݿਪఆॏཁػೳͰ͋Δ͕ɺIoTσόΠεܖػͷॲཧ • ·ͨɺͦͷࡏݿਪఆͷ݁ՌΛड͚ͨൃJOBͱ͍͏ͷ͕͋ Γɺ͜Εॏཁػೳ • ͍ͣΕը໘͔ΒൃՐ͢ΔػೳͰͳ͍😫
E2EͰΧόʔͰ͖ͳ͍😫
Integration Test ͷಋೖ • UT, E2EΛ࡞ͯ͠ɺΧόʔͰ͖ͳ͍ςετൣғͱ১͑ͳ͍ෆ҆ײ • ෆ҆ײ͕͋ΔͷͰɺσϓϩΠ͢ΔͷʹͨΊΒ͍͕ੜ·ΕΔ • ͜ΕΒͷཁૉ͕ॏͳΓɺIntegration
Test Λಋೖ
࣍ • ๊͍͑ͯͨ՝ײ😫 • ▶︎ Integration Test ಋೖ/ӡ༻Ͱͷ💡 • Integration
Test ಋೖޙͷੈք🌏 • ·ͱΊ👀
Integration Test ಋೖ/ӡ༻ Ͱͷ💡
Integration Test ಋೖ/ӡ༻Ͱͷᶃ • ςετέʔεબఆʹ͓͚Δ
Integration Test ಋೖ/ӡ༻Ͱͷᶃ • ςετέʔεબఆʹ͓͚Δ • ฐࣾελʔτΞοϓاۀͰ͋Γػೳ։ൃʹ ΑΓΛ͔͚͍ͨɻɹɹɹɹɹɹɹɹɹɹ ςετ࣮ʹ͔͚ΒΕΔ࣌ؒʹ੍ݶ͕͋Δ
Integration Test ಋೖ/ӡ༻Ͱͷᶃ • ςετέʔεબఆʹ͓͚Δ • ฐࣾελʔτΞοϓاۀͰ͋Γػೳ։ൃʹΑΓΛɹ ͔͚͍ͨɻςετ࣮ʹ͔͚ΒΕΔ࣌ؒʹ੍ݶ͕͋Δ • ͦ͜Ͱॏཁͳػೳͱɺߟ͑ΒΕΔςετέʔεΛ
ϦετΞοϓ͠ɺ༏ઌΛ͚ͭͯςετͷ࣮Λ ͢͢Ίͨ ༏ઌ1 ༏ઌ2 ༏ઌ3
Integration Test ಋೖ/ӡ༻Ͱͷᶄ • ςετൣғઃఆʹ͓͚Δ
Integration Test ಋೖ/ӡ༻Ͱͷᶄ • ςετൣғઃఆʹ͓͚Δ • ΞϓϦؒͷڠௐಈ࡞Λςετ͍͕ͨ͠ɺɹɹ ςετൣғΛେ͖͘͠ա͗ΔͱFlakyʹͳΔ
Integration Test ಋೖ/ӡ༻Ͱͷᶄ • ςετൣғઃఆʹ͓͚Δ • ΞϓϦؒͷڠௐಈ࡞Λςετ͍͕ͨ͠ɺɹɹɹɹ ςετൣғΛେ͖͘͠ա͗ΔͱFlakyʹͳΔ • ςετൣғΛॊೈʹઃఆ͠Έ߹Θͤɺɹɹ
૯߹తʹΈͯΧόʔͰ͖͍ͯΔͱ͢Δ
Integration Test ಋೖ/ӡ༻Ͱͷᶄ • ςετൣғઃఆʹ͓͚Δ • ΞϓϦؒͷڠௐಈ࡞Λςετ͍͕ͨ͠ɺ ςετൣғΛେ͖͘͠ա͗ΔͱFlakyʹͳΔ • ςετൣғΛॊೈʹઃఆ͠Έ߹Θͤɺɹɹɹɹɹ
૯߹తʹΈͯΧόʔͰ͖͍ͯΔͱ͢Δ • ྫ) ࡏݿਪఆൣғ * ൃൣғ
Integration Test ಋೖ/ӡ༻Ͱͷᶄ • ςετൣғઃఆʹ͓͚Δ • ΞϓϦؒͷڠௐಈ࡞Λςετ͍͕ͨ͠ɺ ςετൣғΛେ͖͘͠ա͗ΔͱFlakyʹͳΔ • ςετൣғΛॊೈʹઃఆ͠Έ߹Θͤɺɹɹɹɹɹ
૯߹తʹΈͯΧόʔͰ͖͍ͯΔͱ͢Δ • ྫ) ࡏݿਪఆൣғ * ൃൣғ
Integration Test ಋೖ/ӡ༻Ͱͷᶄ • ςετൣғઃఆʹ͓͚Δ • ΞϓϦؒͷڠௐಈ࡞Λςετ͍͕ͨ͠ɺ ςετൣғΛେ͖͘͠ա͗ΔͱFlakyʹͳΔ • ςετൣғΛॊೈʹઃఆ͠Έ߹Θͤɺɹɹɹɹɹ
૯߹తʹΈͯΧόʔͰ͖͍ͯΔͱ͢Δ • ྫ) ࡏݿਪఆൣғ * ൃൣғ
࣍ • ๊͍͑ͯͨ՝ײ😫 • Integration Test ಋೖ/ӡ༻Ͱͷ💡 • ▶︎ Integration
Test ಋೖޙͷੈք🌏 • ·ͱΊ👀
Integration Test ಋೖޙͷੈք🌏
Integration Test ಋೖޙͷੈք • ॏཁػೳ͕ࣗಈςετͰอޢ͞Ε͍ͯΔ҆৺ײ • σϓϩΠ࣌ͷّ͕ࣜͳ͘ͳͬͨ • ຊ൪ڥͰͷखಈ֬ೝ •
ϩάͷࢹ • σϓϩΠͷ͢͠͞ ⤴︎ ɺʹ4,5ճσϓϩΠ💪
·ͱΊ👀
·ͱΊ • Integration Test Λಋೖ͢Δʹࢸͬͨ՝ײͱɺӡ༻্ͷΛڞ༗͠·ͨ͠ • UT, E2EͰςετ͖͠Εͳ͍ൣғʹॏཁͳػೳ͕͋Δ • ςετέʔεͷ༏ઌ͚ͮͱॊೈͳςετൣғͷઃఆ
• Integration Test Λಋೖ͢Δ͜ͱͰɺॏཁͳػೳΛςετͰΧόʔͰ͖ɺɹɹ σϓϩΠ͘͢͠ͳΓ։ൃੜ࢈ੑ ⤴︎ • ฐࣾͷࣄྫ͕ςετઓུΛߟ͑ΔࡍͷҰॿͱͳΕ͍Ͱ͢