Slide 1

Slide 1 text

ϚΠΫϩαʔϏεΞʔΩςΫνϟ΁ͷ Integration Test ಋೖͷ͢ʍΊ ~ιϑτ΢ΣΞςετࣗಈԽΧϯϑΝϨϯε2023~ (ג)εϚʔτγϣοϐϯά ΤϯδχΞ ໺ౡେ੣

Slide 2

Slide 2 text

ձࣾ঺հ/ࣗݾ঺հ • εϚʔτγϣοϐϯάͱ͍͏ձࣾͰɹ όοΫΤϯυΤϯδχΞ͍ͯ͠·͢ • ॏྔϕʔεͰࡏݿ؅ཧ͢ΔϓϩμΫτΛ ͍ͭͬͯ͘·͢ • Zennʹςετؔ܎ͷهࣄΛ͍͔ͭ͘✏ɹ hiromsͰݕࡧͯ͠Έ͍ͯͩ͘͞👀 • https://zenn.dev/hiroms

Slide 3

Slide 3 text

໨࣍ • ๊͍͑ͯͨ՝୊ײ😫 • Integration Test ಋೖ/ӡ༻Ͱͷ޻෉💡 • Integration Test ಋೖޙͷੈք🌏 • ·ͱΊ👀

Slide 4

Slide 4 text

໨࣍ • ▶︎ ๊͍͑ͯͨ՝୊ײ😫 • Integration Test ಋೖ/ӡ༻Ͱͷ޻෉💡 • Integration Test ಋೖޙͷੈք🌏 • ·ͱΊ👀

Slide 5

Slide 5 text

๊͍͑ͯͨ՝୊ײ😫

Slide 6

Slide 6 text

๊͍͑ͯͨ՝୊ײ • ϚΠΫϩαʔϏεΞʔΩςΫνϟಛ༗ͷ೉͠͞

Slide 7

Slide 7 text

๊͍͑ͯͨ՝୊ײ • ϚΠΫϩαʔϏεΞʔΩςΫνϟಛ༗ͷ೉͠͞ • ͋Δॲཧ͕ෳ਺ͷαʔϏεɺϓϩηεΛ ·͕͓ͨͬͯ͜ΘͳΘΕΔ͜ͱ͕͋Δ

Slide 8

Slide 8 text

๊͍͑ͯͨ՝୊ײ • ϚΠΫϩαʔϏεΞʔΩςΫνϟಛ༗ͷ೉͠͞ • ͋Δܭࢉ݁ՌΛಘΔॲཧ͕ෳ਺ͷαʔϏεɺϓϩηε Λ·͕͓ͨͬͯ͜ΘͳΘΕΔ • ྫ: ฐࣾͷࡏݿ؅ཧϓϩμΫτ͸ॏྔΛଌఆ͠ ࡏݿ਺Λਪఆ͢Δɻ͜ͷਪఆͷ݁ՌΛಘΔͷ ʹ௕͘ෳࡶͳखଓ͖ΛܦΔ

Slide 9

Slide 9 text

๊͍͑ͯͨ՝୊ײ • ϚΠΫϩαʔϏεΞʔΩςΫνϟಛ༗ͷ೉͠͞ • ͋Δܭࢉ݁ՌΛಘΔॲཧ͕ɺෳ਺ͷαʔϏεɺϓϩηεΛ·͕ͨͬ ͓ͯ͜ΘͳΘΕΔ • ྫ: ฐࣾͷࡏݿ؅ཧϓϩμΫτ͸ॏྔΛଌఆͯ͠ࡏݿ਺Λਪఆ͢ Δɻ͜ͷਪఆͷ݁ՌΛಘΔͷʹ௕͘ෳࡶͳखଓ͖ΛܦΔ • ಛఆͷܭࢉͷϩδοΫʹUTΛॻ͍ͯ΋ɺ ࡏݿ਺ͷਪఆɺͱ͍͏ػೳશମΛςετͰ कΕ͍ͯΔ͔ෆ҆😫

Slide 10

Slide 10 text

๊͍͑ͯͨ՝୊ײ • ը໘ܖػͷE2EͰΧόʔͰ͖ͳ͍ൣғʹɹɹ ॏཁͳػೳ͕͋Δ

Slide 11

Slide 11 text

๊͍͑ͯͨ՝୊ײ • ը໘ܖػͷE2EͰΧόʔͰ͖ͳ͍ൣғʹॏཁͳػೳ͕͋Δ • લܝͷࡏݿਪఆ͸ॏཁͳػೳͰ͋Δ͕ɺ IoTσόΠεܖػͷॲཧ

Slide 12

Slide 12 text

๊͍͑ͯͨ՝୊ײ • ը໘ܖػͷE2EͰΧόʔͰ͖ͳ͍ൣғʹॏཁͳػೳ͕͋Δ • લܝͷࡏݿਪఆ͸ॏཁػೳͰ͋Δ͕ɺIoTσόΠεܖػͷॲཧ • ·ͨɺͦͷࡏݿਪఆͷ݁ՌΛड͚ͨൃ஫ JOBͱ͍͏΋ͷ͕͋Γɺ͜Ε΋ॏཁػೳ

Slide 13

Slide 13 text

๊͍͑ͯͨ՝୊ײ • ը໘ܖػͷE2EͰΧόʔͰ͖ͳ͍ൣғʹॏཁͳػೳ͕͋Δ • લܝͷࡏݿਪఆ͸ॏཁػೳͰ͋Δ͕ɺIoTσόΠεܖػͷॲཧ • ·ͨɺͦͷࡏݿਪఆͷ݁ՌΛड͚ͨൃ஫JOBͱ͍͏΋ͷ͕͋ Γɺ͜Ε΋ॏཁػೳ • ͍ͣΕ΋ը໘͔ΒൃՐ͢ΔػೳͰͳ͍😫 E2EͰΧόʔͰ͖ͳ͍😫

Slide 14

Slide 14 text

Integration Test ͷಋೖ΁ • UT, E2EΛ࡞੒ͯ͠΋ɺΧόʔͰ͖ͳ͍ςετൣғͱ১͑ͳ͍ෆ҆ײ • ෆ҆ײ͕͋ΔͷͰɺσϓϩΠ͢ΔͷʹͨΊΒ͍͕ੜ·ΕΔ • ͜ΕΒͷཁૉ͕ॏͳΓɺIntegration Test Λಋೖ

Slide 15

Slide 15 text

໨࣍ • ๊͍͑ͯͨ՝୊ײ😫 • ▶︎ Integration Test ಋೖ/ӡ༻Ͱͷ޻෉💡 • Integration Test ಋೖޙͷੈք🌏 • ·ͱΊ👀

Slide 16

Slide 16 text

Integration Test ಋೖ/ӡ༻ Ͱͷ޻෉💡

Slide 17

Slide 17 text

Integration Test ಋೖ/ӡ༻Ͱͷ޻෉ᶃ • ςετέʔεબఆʹ͓͚Δ޻෉

Slide 18

Slide 18 text

Integration Test ಋೖ/ӡ༻Ͱͷ޻෉ᶃ • ςετέʔεબఆʹ͓͚Δ޻෉ • ฐࣾ͸ελʔτΞοϓاۀͰ͋Γػೳ։ൃʹ ΑΓ޻਺Λ͔͚͍ͨɻɹɹɹɹɹɹɹɹɹɹ ςετ࣮૷ʹ͔͚ΒΕΔ࣌ؒʹ੍ݶ͕͋Δ

Slide 19

Slide 19 text

Integration Test ಋೖ/ӡ༻Ͱͷ޻෉ᶃ • ςετέʔεબఆʹ͓͚Δ޻෉ • ฐࣾ͸ελʔτΞοϓاۀͰ͋Γػೳ։ൃʹΑΓ޻਺Λɹ ͔͚͍ͨɻςετ࣮૷ʹ͔͚ΒΕΔ࣌ؒʹ੍ݶ͕͋Δ • ͦ͜Ͱॏཁͳػೳͱɺߟ͑ΒΕΔςετέʔεΛ ϦετΞοϓ͠ɺ༏ઌ౓Λ͚ͭͯςετͷ࣮૷Λ ͢͢Ίͨ ༏ઌ౓1 ༏ઌ౓2 ༏ઌ౓3

Slide 20

Slide 20 text

Integration Test ಋೖ/ӡ༻Ͱͷ޻෉ᶄ • ςετൣғઃఆʹ͓͚Δ޻෉

Slide 21

Slide 21 text

Integration Test ಋೖ/ӡ༻Ͱͷ޻෉ᶄ • ςετൣғઃఆʹ͓͚Δ޻෉ • ΞϓϦؒͷڠௐಈ࡞Λςετ͍͕ͨ͠ɺɹɹ ςετൣғΛେ͖͘͠ա͗ΔͱFlakyʹͳΔ

Slide 22

Slide 22 text

Integration Test ಋೖ/ӡ༻Ͱͷ޻෉ᶄ • ςετൣғઃఆʹ͓͚Δ޻෉ • ΞϓϦؒͷڠௐಈ࡞Λςετ͍͕ͨ͠ɺɹɹɹɹ ςετൣғΛେ͖͘͠ա͗ΔͱFlakyʹͳΔ • ςετൣғΛॊೈʹઃఆ͠૊Έ߹Θͤɺɹɹ ૯߹తʹΈͯΧόʔͰ͖͍ͯΔͱ͢Δ

Slide 23

Slide 23 text

Integration Test ಋೖ/ӡ༻Ͱͷ޻෉ᶄ • ςετൣғઃఆʹ͓͚Δ޻෉ • ΞϓϦؒͷڠௐಈ࡞Λςετ͍͕ͨ͠ɺ ςετൣғΛେ͖͘͠ա͗ΔͱFlakyʹͳΔ • ςετൣғΛॊೈʹઃఆ͠૊Έ߹Θͤɺɹɹɹɹɹ ૯߹తʹΈͯΧόʔͰ͖͍ͯΔͱ͢Δ • ྫ) ࡏݿਪఆൣғ * ൃ஫ൣғ

Slide 24

Slide 24 text

Integration Test ಋೖ/ӡ༻Ͱͷ޻෉ᶄ • ςετൣғઃఆʹ͓͚Δ޻෉ • ΞϓϦؒͷڠௐಈ࡞Λςετ͍͕ͨ͠ɺ ςετൣғΛେ͖͘͠ա͗ΔͱFlakyʹͳΔ • ςετൣғΛॊೈʹઃఆ͠૊Έ߹Θͤɺɹɹɹɹɹ ૯߹తʹΈͯΧόʔͰ͖͍ͯΔͱ͢Δ • ྫ) ࡏݿਪఆൣғ * ൃ஫ൣғ

Slide 25

Slide 25 text

Integration Test ಋೖ/ӡ༻Ͱͷ޻෉ᶄ • ςετൣғઃఆʹ͓͚Δ޻෉ • ΞϓϦؒͷڠௐಈ࡞Λςετ͍͕ͨ͠ɺ ςετൣғΛେ͖͘͠ա͗ΔͱFlakyʹͳΔ • ςετൣғΛॊೈʹઃఆ͠૊Έ߹Θͤɺɹɹɹɹɹ ૯߹తʹΈͯΧόʔͰ͖͍ͯΔͱ͢Δ • ྫ) ࡏݿਪఆൣғ * ൃ஫ൣғ

Slide 26

Slide 26 text

໨࣍ • ๊͍͑ͯͨ՝୊ײ😫 • Integration Test ಋೖ/ӡ༻Ͱͷ޻෉💡 • ▶︎ Integration Test ಋೖޙͷੈք🌏 • ·ͱΊ👀

Slide 27

Slide 27 text

Integration Test ಋೖޙͷੈք🌏

Slide 28

Slide 28 text

Integration Test ಋೖޙͷੈք • ॏཁػೳ͕ࣗಈςετͰอޢ͞Ε͍ͯΔ҆৺ײ • σϓϩΠ࣌ͷّ͕ࣜͳ͘ͳͬͨ • ຊ൪؀ڥͰͷखಈ֬ೝ • ϩάͷ؂ࢹ • σϓϩΠͷ͠΍͢͞ ⤴︎ ɺ೔ʹ4,5ճσϓϩΠ💪

Slide 29

Slide 29 text

·ͱΊ👀

Slide 30

Slide 30 text

·ͱΊ • Integration Test Λಋೖ͢Δʹࢸͬͨ՝୊ײͱɺӡ༻্ͷ޻෉Λڞ༗͠·ͨ͠ • UT, E2EͰςετ͖͠Εͳ͍ൣғʹॏཁͳػೳ͕͋Δ • ςετέʔεͷ༏ઌ౓͚ͮͱॊೈͳςετൣғͷઃఆ • Integration Test Λಋೖ͢Δ͜ͱͰɺॏཁͳػೳΛςετͰΧόʔͰ͖ɺɹɹ σϓϩΠ͠΍͘͢ͳΓ։ൃੜ࢈ੑ ⤴︎ • ฐࣾͷࣄྫ͕ςετઓུΛߟ͑ΔࡍͷҰॿͱͳΕ͹޾͍Ͱ͢