JaSST '17 Tokyo -「Web.JaSST ~ Web Service QA Meeting in JaSST ~」セッションの登壇資料です。
ݱ͔ΒݟΔWebͱ ΈࠐΈͷQA~࣭ͷߟ͑ಇ͖ํ͕ҟͳΔ৫ͰͷۀదԠ~Rijun Suzuki @e5rijun
View Slide
ུྺ• 2008 ~ 2012 ʢΈࠐΈʣ• ಠཱܥSlerͰ4ؒۈ• ओʹ٬ઌͰΈࠐΈͷධՁ• 2012 ~ 2017ݱࡏʢWebʣ• ΠϯλʔωοταʔϏεձࣾͰۈ~ࢸݱࡏ
ࠓ͢͜ͱ
৫ʢ࢈ۀυϝΠϯʣͷҧ͍ʹΑΔ࣭ཧ
ΈࠐΈͱWebͷQAͷҧ͍৫(࢈ۀυϝΠϯ)ʹΑͬͯͷ࣭ͷߟ͑ํQAͷಇ͖ํͷҧ͍ΛΔ͜ͱͰɺ• QAΤϯδχΞͱͯ͠ͷݟʹ෯Λ࣋ͨͤΔ• ͦͷݟΛݱͰ׆༻͠Α͏
• ΈࠐΈͱWebͷൺֱ• ݱঢ়ͷऔΓΈɾ৺͕͚
ൺֱཁૉ1. ։ൃऀͱͷڑ2. ϓϩμΫτʹد༩Ͱ͖Δࡋྔ3. ࣭ͷॏཁੑͷਁಁ4. ςετϦιʔεɾεέδϡʔϧ5. QAΤϯδχΞͷҐ
։ൃऀͱͷڑ• ׂͱԕ͔ͬͨ• ৫͕େ͖ͯ͘ॎׂΓͩͬͨ• Θ͍Θ͍• ੜ࢈ੑ্ͷͨΊɺԿʹ։ൃͱڠۀ͢Δ͔ͱ͍͏ͷ͕ٻΊΒΕΔΈࠐΈWeb--++
ϓϩμΫτʹد༩Ͱ͖Δࡋྔ• ϘτϜΞοϓ͔ΒͷվળఏҊ͍͠• ϢʔβʔͷҙݟΛऔΓೖΕʹ͍͘• ϘτϜΞοϓͰఏҊఏҊ͍͢͠• ݱͷҙݟ͕ө͞Ε͍͢ΈࠐΈWeb--++
࣭ͷॏཁੑͷਁಁ• ͱʹ͔͘ॏཁࢹ͞ΕΔʢຖόʔδϣϯϦϦʔεఆձٞʣ• ͱʹ͔͘ࢢͰͷෆ۩߹ൃੜίετ͕ߴ͍• ෆ۩߹͕͙͋ͬͯ͢ʹͤͳ͍ಛੑ• ܰࢹ͞ΕΔ߹͕͋Δʢೲظػձརӹ͕࣭ʹউͭ͜ͱ͕͋Δʣ• ෆ۩߹͕͙͋ͬͯ͢ʹͤΔಛੑ• ઐଐͷQAΛ࣋ͨͳ͍৫͕ଘࡏ͍ͯͨ͠ΈࠐΈWeb--++
ςετϦιʔεɾεέδϡʔϧ• ςετྃ·Ͱ͕ͻͨ͢Β͍ (α > β> RC > GM ͱ͔)• ಉ͡ςετΛԆʑͱ܁Γฦ͢• ςετ࣮ߦͷݫ੍͍࣌ؒ͋͠·Γͳ͔ͬͨ• ϦϦʔε·ͰͷαΠΫϧ͕͍• ݶΒΕͨςεταΠΫϧͰɺςετΧόϨοδΛ֬อ͢Δͱ͍͏͕ඞཁʹͳͬͯ͘ΔΈࠐΈWeb--++
QAΤϯδχΞͷҐ• ߴ͔ͬͨʢ࣭ͷॏཁੑͱ૬͕ؔ͋Δ)• ৫ʹQAΤϯδχΞͷॏཁੑ͕ཧղ͞Ε͍ͯΔ• ͘ݟΒΕΔ৫ଘࡏ͢Δͱࢥ͏ ࣭͕αʔϏεͷػձଛࣦʹͳΔ߹ͳͲ• ۀքతʹɺ࣭อূͷॏཁੑ͕ཧղ͞Ε͍ͯͳ͍ͱ͜ΖʁΈࠐΈWeb--++
ධ߲ ΈࠐΈ 8FC։ൃऀͱͷڑ ϓϩμΫτʹد༩Ͱ͖Δࡋྔ ࣭ͷॏཁੑͷਁಁ ςετϦιʔεɾεέδϡʔϧ QAΤϯδχΞͷҐ
࢈ۀυϝΠϯͷҧ͍ʹΑΔ ςετͷΪϟοϓ
࠶ܝ৫(࢈ۀυϝΠϯ)ʹΑͬͯͷ࣭ͷߟ͑ํQAͷಇ͖ํͷҧ͍ΛΔ͜ͱͰɺ•QAΤϯδχΞͱͯ͠ͷݟʹ෯Λ࣋ͨͤΔ•ͦͷݟΛݱͰ׆༻͠Α͏
ݱͰͷऔΓΈɾ৺͕͚ ʢҰ෦ئؚʣ
ධ߲ ΈࠐΈ 8FC։ൃऀͱͷڑ ϓϩμΫτʹد༩Ͱ͖Δࡋྔ ࣭ͷॏཁੑͷਁಁ ςετϦιʔεɾεέδϡʔϧ QAΤϯδχΞͷҐ ϓϥεͷϒϩοΫϚΠφεͷϒϩοΫ
ϓϥεͷϒϩοΫߋʹϓϥεΛࢦ͢
։ൃऀͱͷڑ߲ ΈࠐΈ 8FC࣭ͷॏཁੑͷਁಁ ςετϦιʔεɾεέδϡʔϧ QAΤϯδχΞͷҐ ։ൃऀͱͷڑ ϓϩμΫτʹد༩Ͱ͖Δࡋྔ ߲ ΈࠐΈ 8FC։ൃऀͱͷڑ ϓϩμΫτʹد༩Ͱ͖Δࡋྔ ࣭ͷॏཁੑͷਁಁ ςετϦιʔεɾεέδϡʔϧ QAΤϯδχΞͷҐ
։ൃऀͱͷڑQ. ੜ࢈ੑ্ͷͨΊʹ։ൃͱͷڠۀ͕ٻΊΒΕ͍ͯΔɻߋʹີͳؔੑΛங͘ʹʁ
։ൃऀͱͷڑʮڠۀΛ߹͍ΛਂΊΔͱɺૣ͘ɺྑ͍ͷ͕ੜ·ΕΔͱߟ͑Δʯ• ։ൃ͚ͩͷίϛϡχέʔγϣϯϥΠϯΛ࡞Βͳ͍• QA৫ԣ۲Ͱɺݸʑͷ୲ऀͳΔ͘αʔϏεͷ༷ࡦఆஈ֊͔Βίϛοτ• ٕज़ఆྫʹ։ൃ+QAͰࢀՃ࣮ͯ͠ͷݕ౼ஈ֊͔ΒѲͰ͖ΔΑ͏ʹ
ϓϩμΫτʹد༩Ͱ͖Δࡋྔ߲ ΈࠐΈ 8FC։ൃऀͱͷڑ ϓϩμΫτʹد༩Ͱ͖Δࡋྔ ࣭ͷॏཁੑͷਁಁ ςετϦιʔεɾεέδϡʔϧ QAΤϯδχΞͷҐ
ϓϩμΫτʹد༩Ͱ͖ΔࡋྔQ. αʔϏεʹҙݟΛཱ͍͢͠ʹͳͬͨɺߋʹ͍͍αʔϏεʹ͍ͯͨ͘͠Ίʹ͍ͬͯ͘͜ͱʁ
ϓϩμΫτʹد༩Ͱ͖Δࡋྔʮͱʹ͔͘ΦʔφʔγοϓΛൃش͢Δʯ• ීஈ͔ΒϓϩδΣΫτΛ৮Δ• αʔϏευϝΠϯΛపఈతʹΔ• ໘ΛੵۃతʹऔΓʹߦ͘
ϚΠφεϒϩοΫΛϓϥεʹม͑Δ
࣭ͷॏཁੑͷਁಁ߲ ΈࠐΈ 8FC։ൃऀͱͷڑ ϓϩμΫτʹد༩Ͱ͖Δࡋྔ ࣭ͷॏཁੑͷਁಁ ςετϦιʔεɾεέδϡʔϧ QAΤϯδχΞͷҐ
࣭ͷॏཁੑͷਁಁQ. ΈࠐΈͰݱʹཧղ͕࣭͋ͬͨͷॏཁੑΛɺͲ͏ͬͯݱʹਁಁ͍͔ͤͯ͘͞ʁʢͦͦຊʹಉఔͷ࣭Λ֬อ͢Δඞཁ͕͋Δͷ͔ʁʣ
࣭ͷॏཁੑͷਁಁʮϓϩμΫτʹٻΊΒΕ͍ͯΔ࣭ج४Λཧղͦ͜͠Λࢦ͢ɺա࣭ʹͳΒͳ͍Α͏ʹʯ• ʮϓϩμΫτʹٻΊΒΕ͍ͯΔ࣭ج४ʯΛҙࣝ͢Δ• εέδϡʔϧԆɺػձଛࣦΛট͔ͳ͍Α͏ʹ
ςετϦιʔεɾεέδϡʔϧ߲ ΈࠐΈ 8FC։ൃऀͱͷڑ ϓϩμΫτʹد༩Ͱ͖Δࡋྔ ࣭ͷॏཁੑͷਁಁ ςετϦιʔεɾεέδϡʔϧ QAΤϯδχΞͷҐ
ςετϦιʔεɾεέδϡʔϧQ. ΈࠐΈͰेʹ֬อ͞Ε͍ͯͨςετظ͕ؒͳ͍தͰɺͲ͏࣭ͬͯΛ୲อ͢Δͷ͔ʁ
ςετϦιʔεɾεέδϡʔϧʮܰඍͳ͞ͳ͍ͱׂΓΔʯ• ֘ϦϦʔεͰඞͣୡ͍ͨ͜͠ͱ࠷༏ઌͰղܾ• ॴҦ Trivial Bug ͱ͔ڐ༰• ܰඍͳ࣍ͷαΠΫϧʹੵۃతʹ࣋ͪӽ͢
ςετϦιʔεɾεέδϡʔϧʮͰ͖Δ͚ͩςετΛ͍࣌ؒͰߦɺఀͤ͞ͳ͍Α͏ͳʯ• ΫϦςΟΧϧύεৗʹڞ༗͢Δ• Ͱ͖Δ͚ͩͷΓ͚ݪҼಛఆΛͯ͠ɺ։ൃ։ൃʹूதͯ͠Β͏• ࣮ɾઃܭͷϨΠϠʔ·Ͱ߱ΓͯѲ͢Δ
QAΤϯδχΞͷҐ߲ ΈࠐΈ 8FC։ൃऀͱͷڑ ϓϩμΫτʹد༩Ͱ͖Δࡋྔ ࣭ͷॏཁੑͷਁಁ ςετϦιʔεɾεέδϡʔϧ QAΤϯδχΞͷҐ
QAΤϯδχΞͷҐQ. ৫ʹ͓͍ͯQAͷඇଚܟ߹͍ΛߴΊΔͨΊʹʁ
QAΤϯδχΞͷҐʮ՝ղܾͷྖҬΛ͘͢Δʯ• ςετͷઐࣝɺWebυϝΠϯࣝ• ཁٻࣗମ͕ᐆດͩͱ͔࣌ؒڥͷ੍͕ݫ͍͠தͰ՝ղܾͰ͖Δೳྗ
QAΤϯδχΞͷҐʮ৫ͷख़Λߴ͘͢Δʯ• ςετ୲ऀͷਫ਼ਆ໘ʹΑΔ۠ͷ্Λࢦ͢• ςετΤϯδχΞͷΩϟϦΞύεΛࣾʹ࡞Δ• ৫తͳΛࢼΈΔ(ݱঢ়ΛΔͱ͜Ζ͔Β)• TPI NEXT• Test.SSF
৫ʹΑΔҧ͍ΛΓɺߟ͑ํͷ෯Λ͛Δ
৫ʹΑΔߟ͑ํͷҧ͍ΛͬͨΓɺࢹΛ͛ΔͨΊʹʁ
ʮձࣾҎ֎ͷॴͰΩϟϦΞΛ৳ͤʯ (Ҿ༻ɿιϑτΣΞςετ293ͷమଇ)• ֎෦Ͱٕज़ଞͷݱͷࣄΛΔ͜ͱ• ͦͯ͠ɺͦΕΛࣾͰ׆͔ͤΔΑ͏ʹ• ࣾͰ࠷దԽ͞ΕͨਓࡐʹͳΒͳ͍• ਓ຺Λͭ͘Δ ऴޏ༻ͷ࣌ऴΘΓ
·ͱΊ৫ʹΑΔ࣭ͷߟ͑ͷҧ͍ΛΓɺ QAΤϯδχΞͱͯ͠ݟʹͯ͠ɺݱͰ׆༻ͨ͠ΓɺΩϟϦΞΞοϓ͠Α͏