Slide 1

Slide 1 text

ͱ͋ΔQAΤϯδχΞ͕ɺ ϚΠΫϩαʔϏεͷ ։ൃνʔϜͱɺ ग़ձͬͨʔʔ 2023.05.20 Scrum Fest Niigata 2023 גࣜձࣾϚωʔϑΥϫʔυ Yoya KOBAYASHI

Slide 2

Slide 2 text

ϚωʔϑΥϫʔυ Ϋϥ΢υ֬ఆਃࠂ QAϦʔμʔ ܦྺ ● 2009ʙ2016ɹখചۀ޲͚γεςϜ։ൃ ● 2016ʙ2019ɹϒϥ΢βήʔϜ։ൃ ● 2019ʙɹϚωʔϑΥϫʔυ JOIN
 ɹɹɹɹɹˍ QAΤϯδχΞʹస਎ ● 2021ʙɹΫϥ΢υ֬ఆਃࠂͷ
 ɹɹɹɹ QAνʔϜΛ্ཱͪ͛ɺࠓʹࢸΔ খྛ ༽࠸ (KOBAYASHI Maya / yoya) @yoya_k ɹ https://note.com/yoya_k

Slide 3

Slide 3 text

Scrum Fest Niigata 2022 Ͱ͸͜Μͳ࿩Λ͠·ͨ͠ Hiroaki Nishijo, Yoya Kobayashi ʮ0 → 1ϑΣʔζͰE2EࣗಈςετΛಋೖͨ͠ࢲͨͪͷ͜Ε·Ͱͱ͜Ε͔Βʯ 2022-05-21 ެ։ (2023-05-19 ΞΫηε) https://speakerdeck.com/yoyakoba/0-1-huezude-e2e-zi-dong-tesutowodao-ru-sitasi-tatifalse-koremadetokorekara

Slide 4

Slide 4 text

ࠓ೔͸ ·ͬͨ͘ҧ͏࿩Λ͠·͢

Slide 5

Slide 5 text

͜ͷϚΠΫϩαʔϏεͷςετʹ͍ͭͯ૬ஊʹ৐ͬͯ΄͍͠ɺͱ͍͏࿩͕΍͖ͬͯͨ ͜ͱͷ࢝·Γ ● ࢓༁ா ● ޱ࠲໌ࡉ ● ܾࢉॻ ● etc. ͱͬͯ΋ϞϊϦγοΫͳ γεςϜ ػೳ A ػೳ A ϚΠΫϩαʔϏεԽʂ ʢAPI ͷΈͷఏڙʣ etc. ଞͷϓϩμΫτͰ΋ ར༻Ͱ͖ΔΑ͏ʹ͍ͨ͠ʂ

Slide 6

Slide 6 text

ͯ͞ɺࠔͬͨͧ ϚΠΫϩαʔϏεͬͯ ͳΜ͔೉ͦ͠͏…… ͦ΋ͦ΋ API͚ͩͷαʔϏεΛ ςετͨ͜͠ͱ͕ͳ͍ΜͩΑͳ…… UI͕ແ͍ͱ શવΠϝʔδͰ͖ͳ͍…… ࣾ಺ͷଞͷQA΋ ܦݧ͕ແ͍Έ͍ͨ…… (※ ౰࣌) εΫϥϜͰ։ൃͯ͠Δͬͯ ݴͬͯͨͳ…… খͦ͞͏ͳνʔϜͩ͠ɺ ੒ཱͯ͠Δͷ͔ͳ……

Slide 7

Slide 7 text

Attention ͜ͷηογϣϯͰ͸ɺͱ͋Δۦ͚ग़͠ (??) QAΤϯδχΞ͕ ໿3ϲ݄ؒϚΠΫϩαʔϏεͷ։ൃνʔϜͱҰॹʹաͨ͝͠ͱ͖ͷ ମݧஊΛ͓ૹΓ͠·͢ ● ੒ޭஊͰ͸͋Γ·ͤΜ͠ɺ
 ϕετϓϥΫςΟεΛ൸࿐͢Δ࿩Ͱ΋͋Γ·ͤΜ ● Ή͠Ζ൴Β͔Βֶ͹ͤͯ΋Βͬͨͱ͍͏ཱ৔Ͱ͢ ● ๭଺ࡏهΛݟΔΑ͏ͳ
 ΏͬͨΓͨ͠ؾ࣋ͪͰָ͓͠Έ͍ͩ͘͞

Slide 8

Slide 8 text

؍࡯Ͱݟ͖͑ͯͨ ʮ੔͑Δਓʯͷඞཁੑ

Slide 9

Slide 9 text

ϝϯόʔߏ੒ ● ϓϩμΫτϚωʔδϟʔ ● σβΠφʔ ● ΤϯδχΞ νʔϜͷঢ়ଶΛݟͯΈΑ͏ Ϣʔβʔମݧͷ AsIs Λ੔ཧͯ͠ ToBe Λ ܾΊΔͱ͜Ζ͔Β ࢝ΊͨΜͩʂ શମతͳετʔϦʔΛ ߟ͑Δ্Ͱ σβΠφʔͷڠྗ͸ ͔ܽͤͳ͍Ͷ

Slide 10

Slide 10 text

ཁ݅΍࣮૷Ͱɺࢲ͕QAΤϯδχΞͱͯ͠ࢦఠ͍ͨ͠ϙΠϯτ͸େମϝϯόʔಉ࢜ͰࢦఠͰ͖͍ͯͨ ٞ࿦΋׆ൃͰϩʔϧʹͱΒΘΕͣɺॱௐͦ͏ʹݟ͑Δͳ…… νʔϜͷঢ়ଶΛݟͯΈΑ͏ Ϣʔβʔʹ͸ ͜͏ݟ͍͔ͤͨΒɺ ͦͷϝοηʔδͩͱ ࠞཚͪ͠Ό͏͔΋ Designer PdM Developer طଘγεςϜʹ ͜͏͍͏ಈ͖͕͚͋ͬͨͲɺ ͜ͷ৔߹Ͳ͏͠Α͏͔ʁ USMΛݟ͍ͯͯ ߟ͑ͨΜͰ͕͢……

Slide 11

Slide 11 text

● ʮࠓɺ͜͜ʯʹूதͰ͖͍ͯͳ͍ ○ ͔ͳΓઌͷݒҊࣄ߲·Ͱٞ࿦͍ͯ͠Δ͜ͱ͕ଟ͍ ■ ௚ۙͰԿΛ͢΂͖͔࣌ʑࠞཚ͍ͯ͠Δ ■ ͲͷϑΣʔζͷ࢓༷ʹ͍ͭͯ࿩͍ͯ͠Δ͔ʹ͍ͭͯ΋ࠞཚ͍ͯ͠Δ ○ ݱࡏͷ࿩Λ͢Δ৔ͱɺকདྷతͳ࿩Λ͢Δ৔ͷڥ໨͕͍͋·͍ʹͳΓ͕ͪ ■ ϛʔςΟϯάͷΰʔϧ͕Θ͔Βͳ͍ͷͰɺ
 ࿩͍ͨ͜͠ͱΛ࿩͠ਚ͘͢·ͰऴΘΒͳ͍
 ● όοΫϩάͷεςʔλε͕͍͋·͍ ○ ׬͔ྃͨ͠Ͳ͏͔͸ɺΞΠςϜΛͱͬͨΤϯδχΞͷײ֮ͰܾΊ͍ͯͨ ○ ௥ՃͰൃੜͨ͠ཁ݅ͷѻ͍ʹ͍ͭͯϧʔϧΛܾΊ͍ͯͳ͍ ■ ͦͷΞΠςϜͷதͰରॲ͢Δ৔߹ɺผΞΠςϜʹ͢Δ৔߹ɺ·ͪ·ͪ ■ ผ్੾Γग़ͨ͠όοΫϩάΞΠςϜ͕௥੻Ͱ͖ͣɺॏෳ΍औΓҧ͑΋…… ͦΕͰ΋ͪΐͬͱة͏͍܏޲͕……

Slide 12

Slide 12 text

εΫϥϜϚελʔͷΑ͏ͳɺ ၆ᛌͯ͠੔ཧΛͯ͘͠ΕΔਓ͕͍Δͱ҆৺͔΋͠Εͳ͍ ·ͣ͸ ࠓSprintͰ ୡ੒͍ͨ͜͠ͱΛ ࿩͠·͠ΐ͏ʂ είʔϓ͕ গ͠มΘΓͦ͏Ͱ͢Ͷʂ όοΫϩάΞΠςϜΛ ௥Ճ͠·ͤΜ͔ʁ όά؅ཧදΛ ࡞Γ·͠ΐ͏ʂ ͍͍ٞ͘͢͝࿦ͳͷͰ υΩϡϝϯτʹ ·ͱΊ·ͤΜ͔ʁ

Slide 13

Slide 13 text

ͯ͞ɺࣗ෼͸ ԿΛ͠Α͏ʁ

Slide 14

Slide 14 text

ೃછΈͷͳ͍ϫʔυ͹͔ΓͰ ಀ͛ग़ͨ͘͠ͳΔ API͸ gRPC Λ࠾༻͠·͢ʂ ͋ͱࠓճ Pub/Sub ʹ͢Δܭը΋ ཱ͍ͯͯ·ͯ͠ʙ ԿͦΕʙʙʙ (ٽ) REST Ͱ͢Β ͪΐͬͱ͔͠ ৮ͬͨ͜ͱͳ͍ͷʹ…… ※ Pub/Sub ͷ࿩͸ࠓճׂѪ͠·͢ɻ͝ΊΜͳ͍͞ʂ

Slide 15

Slide 15 text

ࣗΒ खΛಈ͔͢ඞཁ͸ ͳ͍͔΋͠Εͳ͍͕…… ϨϏϡʔத…… શવϐϯͱ͜ͳ͍͠ɺ ͜Ε͕ ਖ਼࣮͘͠૷Ͱ͖͍ͯΔ͔ͳΜͯ Ͳ͏൑அ͢Ε͹ ͍͍ͷ΍Β……

Slide 16

Slide 16 text

·ͣ͸ gRPC ͷ࣮ߦ͕Ͱ͖ΔΑ͏ʹ͠Α͏ gRPC ͷެࣜυΩϡϝϯτ͸ ೔ຊޠ൛͕ແ͍͔Βɺ ಡΉ͚ͩͰ͕͔͔࣌ؒΔͧ…… ʰελʔςΟϯάgRPCʱ ෢্ কथ ஶ ΠϯϓϨε NextPublishing, 2020ग़൛ https://nextpublishing.jp/book/11746.html REST ͱͷҧ͍Λͬ͘͟Γͱཧղ͢Δͱ͜Ζ͔Βελʔτ

Slide 17

Slide 17 text

खΛಈ͔͢͜ͱͰɺݟ͖͑ͯͨ͜ͱ ● ޾͍ɺطʹςετ؀ڥʹσϓϩΠ͞ΕΔͱ͜Ζ·Ͱ੔͍࢝Ί͍ͯͨ ○ gRPC ࣮ߦʹඞཁͳπʔϧͱ઀ଓઌ͑͞෼͔Ε͹ɺ΋͏؆୯ʹಈ͔ͤΔ ○ ͨͩ͠ɺ͜Ε͕ QA Ͱ΋ૢ࡞Ͱ͖Δঢ়ଶͳͷ͔Ͳ͏͔ Dev ʹ͸Θ͔Βͳ͍ ■ ૬खͷεΩϧΛ೺Ѳ͍ͯ͠ͳ͍͜ͱʹΑΔɺա৒ͳԕྀ ■ QAΤϯδχΞͷํ͔ΒࣗΒಈ͍ͯ
 ʮ͔͜͜Βઌ͕Θ͔Βͳ͍ʯͱ͍͏ϥΠϯΛࣔͨ͠ํ͕ঢ়گ͸ਐల͢Δ
 ● ࣮ࡍʹૢ࡞ͯ͠ΈͯɺϝϦοτ͸͔͋ͬͨ ○ ۩ମతͳ input / output Λݟͨ͜ͱͰࢦఠͰ͖ΔՕॴ͕૿͑ͨ ■ ᐆດͳఆٛ ■ ޡղ͠΍͍͢ϑΟʔϧυ໊ (ྨࣅͷ id ͕ෳ਺͋ΔͳͲ)

Slide 18

Slide 18 text

ͯ͞ɺ࣍͸ Ͳ͏͢Δʁ ೰ΜͰ͍Δͱ͖ɺώϯτʹͳͬͨͷ͸͜ͷεϥΠυ JaSSTʼ20 Niigata ࣄྫ঺հ ʮAPIςετΛࣗಈԽͯ͠ϦάϨογϣϯςετʹͨ͠Βɺ҆৺Ͱ҆શͳ։ൃ͕Ͱ͖ͯؾָ͕࣋ͪʹͳͬͨʯ https://jasst.jp/symposium/jasst20niigata/pdf/S5.pdf (ҏ౻५ฏ, 2020-09-28 ެ։, 2023-05-19 ΞΫηε) (͡ΎΜ΃ʔ͞Μͷൃදʂ)

Slide 19

Slide 19 text

ͯ͞ɺ࣍͸ Ͳ͏͢Δʁ https://jasst.jp/symposium/jasst20niigata/pdf/S5.pdf Ҿ༻ݩɿಉ্, p.18 (2023-05-19 ΞΫηε) ͋ΕɺجຊతͳྲྀΕ͸มΘΒͳ͍ͳ……ʂʁɹͱ͍͏͜ͱʹؾ෇͘

Slide 20

Slide 20 text

ผΕ͸ಥવʹɺ ͦͯ͠ ϥετεύʔτ΁

Slide 21

Slide 21 text

ٸܹʹΧΦεϔಥೖ͢ΔνʔϜ େਓͷࣄ৘ʹΑΓɺ͜ͷϚΠΫϩαʔϏε͕ผνʔϜʹҠ؅͞ΕΔ͜ͱʹ ● 2ϲ݄ޙɺ͜ͷνʔϜ͸ղࢄ͠·͢ ● Ҿ͖ܧ͗ΛεϜʔζʹߦ͏ͨΊɺ ○ Ϟσϧͷߏ੒ΛɺҠ؅ઌͷνʔϜ͕ཧղ͠΍͍͢΋ͷʹม͑·͢ ○ API ͸ɺgRPC Ͱ͸ͳ͘ REST ʹ͍ͯͩ͘͠͞ ͜ΕʹΑΓɺ աڈʹ΍ͬͨ͜ͱɾ͜Ε͔Β΍Δ͜ͱɾকདྷ΍Γ͔ͨͬͨ͜ͱ ͕ࠞࡏ࢝͠ΊΔ ● Ҿ͖ܧ͗ͷϛʔςΟϯάɺҠ؅ઌ͔Βͷ࣭໰ ● ࣮૷ࡁΈͷػೳΛ΄΅Πν͔Β࡞Γ௚͠ ● ணख࢝͠Ί͍ͯͨػೳͷ࣮૷Λ΍Γ੾Δ ● ઌͷϑΣʔζͰܭը͍ͯͨ͠ػೳͷཁ݅੔ཧɹetc.

Slide 22

Slide 22 text

ςετͷ໨త΋େ෯ʹํ޲స׵ ࣮૷ࡁΈͷػೳͷʮਖ਼͍͠ڍಈʯ͕ԿͰ͋Δ͔ɺ ։ൃϝϯόʔ͕૯ೖΕସ͑͞Εͯ΋ཧղͰ͖Δঢ়ଶʹ͢Δ͜ͱ ΛୈҰʹͨ͠ εϓϨουγʔτͰॻ͍ͨ ςετέʔεͩͱ શવ఻ΘΔؾ͕͠ͳ͍…… Postman ͷςετεΫϦϓτ ௅ઓͯ͠ΈΔ͔……

Slide 23

Slide 23 text

ʢิ଍ʣPostman ͷςετεΫϦϓτͬͯʁ Ҿ༻ݩɿWriting tests - Postman Learning Center (2023-05-19 ΞΫηε) https://learning.postman.com/docs/writing-scripts/test-scripts/ Web API πʔϧʮPostmanʯʹ͸ɺ Ϩεϙϯε஋ΛνΣοΫ͢Δ javascript ϕʔεͷςετγφϦΦػೳ͕͋Δ

Slide 24

Slide 24 text

ͳΜͱ͔Ұׅ࣮ߦͰ͖Δͱ͜Ζ·Ͱ׬૸ʂ ࡞੒ͨ͠εΫϦϓτ͸
 Ҿ͖ܧ͗ͷ௚લ·Ͱ׆༻Ͱ͖Δ΋ͷʹͳͬͨ ● ϦϑΝΫλϦϯάதʹൃੜͨ͠
 ҙਤ͠ͳ͍มߋΛΩϟον ● PdM΍։ൃϝϯόʔ΋
 खݩͰ࣮ߦ͠ͳ͕Β࠷ऴ֬ೝ ౰࣌࡞੒࣮ͨ͠ߦखॱ

Slide 25

Slide 25 text

͓ΘΓʹ ΍Εͳ͔ͬͨ͜ͱɺչ΍Ή͜ͱ͸ଟ͍ ● ੑೳࢼݧɺηΩϡϦςΟࢼݧɹະணख ● ૊ΈࠐΈઌͷϓϩμΫτνʔϜͷQAΛר͖ࠐΜͩٞ࿦͕
 ΄ͱΜͲͰ͖ͣ ● QAͰ͸ͳ͘εΫϥϜϚελʔతͳ;Δ·͍Λ࢝͠Ίͯ
 ࠞཚͯ͠͠·͏ϝϯόʔ΋͍ͨɹetc. Ͱ΋ɺগ͚ͩ͠੒௕ͨࣗ͠෼͕͍Δ ● APIςετ΁ͷ఍߅ײ͸ݮͬͨ ● ٕज़తͳ΋ͷʹ͍ͭͯखΛಈ͔ͯ͠าΈدΔ
 ͱ͍͏ࢼΈ͸ࠓͷνʔϜͰ΋࣮ફத

Slide 26

Slide 26 text

Thanks !!!