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
テスト版水平思考クイズ〜不具合から原因を想像しよう〜/xpjug2023
Search
yoshitake_1201
September 30, 2023
Technology
1
1.3k
テスト版水平思考クイズ〜不具合から原因を想像しよう〜/xpjug2023
XP祭り2023で発表したスライドです。
https://confengine.com/conferences/xp2023/proposal/18864
yoshitake_1201
September 30, 2023
Tweet
Share
More Decks by yoshitake_1201
See All by yoshitake_1201
テストチームリーダーが3年前ぐらいからやっている メンバーと話す時間について話す/JaSST25Kyushu
yoshitake_1201
0
72
人間の特性に注目してテストする/TestNow
yoshitake_1201
0
46
6つのミスが起きる状況に 注目してテストする/testradio2025
yoshitake_1201
0
110
役割分担して行うペアテスト / jasst21hokkaido
yoshitake_1201
0
360
E2E自動テストの前に 手動テストを効率化するための自動化を行った話/stac2020
yoshitake_1201
1
2.9k
スプレッドシートはいいぞ / jasst20kyushu-sponsor-session
yoshitake_1201
0
480
スプレッドシートはいいぞ 2 / jasst20kyushu-lt-session
yoshitake_1201
0
680
テスト観点の共有会を やってみよう 〜WACATE 2019 冬 分科会〜/wacate2019winter_subcommittee
yoshitake_1201
0
1k
アジャイル・アジャイル開発って何?/すぐ聞く・チームの課題にする/20190423
yoshitake_1201
0
3.1k
Other Decks in Technology
See All in Technology
Dify on AWS 環境構築手順
yosse95ai
0
150
Open Table Format (OTF) が必要になった背景とその機能 (2025.10.28)
simosako
2
370
Observability — Extending Into Incident Response
nari_ex
1
540
会社を支える Pythonという言語戦略 ~なぜPythonを主要言語にしているのか?~
curekoshimizu
3
880
JSConf JPのwebsiteをGatsbyからNext.jsに移行した話 - Next.jsの多言語静的サイトと課題
leko
2
190
プレイドのユニークな技術とインターンのリアル
plaidtech
PRO
1
450
[re:Inent2025事前勉強会(有志で開催)] re:Inventで見つけた人生をちょっと変えるコツ
sh_fk2
1
660
AI-Readyを目指した非構造化データのメダリオンアーキテクチャ
r_miura
1
340
abema-trace-sampling-observability-cost-optimization
tetsuya28
0
200
MCP ✖️ Apps SDKを触ってみた
hisuzuya
0
390
AI時代におけるデータの重要性 ~データマネジメントの第一歩~
ryoichi_ota
0
720
From Natural Language to K8s Operations: The MCP Architecture and Practice of kubectl-ai
appleboy
0
270
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Making Projects Easy
brettharned
120
6.4k
YesSQL, Process and Tooling at Scale
rocio
173
15k
Optimizing for Happiness
mojombo
379
70k
Rails Girls Zürich Keynote
gr2m
95
14k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Scaling GitHub
holman
463
140k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Java REST API Framework Comparison - PWX 2021
mraible
34
8.9k
Transcript
ςετ൛ਫฏࢥߟΫΠζ ʙෆ۩߹͔ΒݪҼΛ૾͠Α͏ʙ ZPTIJUBLF@
ࣗݾհ ✦ ໊લ ٢৳ହ Α͚ͨ͠ͷͿͻΖ ✦ *%
5XJUUFS!ZPTIJUBLF@ ✦ 8PSLBU גࣜձࣾ'VTJD ϑϡʔδοΫ ओςετ ✦ Ԭ͔ΒΦϯϥΠϯࢀՃத
ਫฏࢥߟΫΠζͱʁ
ਫฏࢥߟਫฏࢥߟΫΠζͱʁ w ਫฏࢥߟ ͋Δʹର͠ɺࠓ·ͰߦΘΕ͖ͯͨཧʹͱΒΘΕͣʹɺશ͘ҟͳ͔ͬͨ֯ Β৽͍͠ΞΠσΞΛੜ͏ͱ͢Δߟ͑ํɻӳࠃͷσϘϊ͕͜Ζএ͑ͨɻ 8FCMJPࣙॻΑΓIUUQTXXXXFCMJPKQDPOUFOUਫฏࢥߟ w ਫฏࢥߟΫΠζ
ʮग़ऀ͕ಡΈ্͛ΔṖͷޠʹରͯ͠ɺճऀ͕ʮ͍ʯʮ͍͍͑ʯʮؔ͋Γ· ͤΜʯͷ͍ͣΕ͔Ͱ͑ΒΕΔ࣭Λ܁Γฦ͢͜ͱͰঢ়گΛཧ͠ɺਅ૬Λਪཧ͢Δ ܗࣜͷΫΠζʯͷ͜ͱͰ͢ɻ ݹ༸ฏஶͻΒΊ͖Λ͑ΔφκτΩਫฏࢥߟΫΠζ ݬౙࣷ հϖʔδΑ Γ IUUQTXXXHFOUPTIBDPKQCPPLEFUBJM ɻ
ਓͱλΫγʔͷӡసखΓ߹͍Ͱ͔͢ʁ ਓ͕λΫγʔʹΔͱߦ͖ઌฉ͔ͳ͍··λΫγʔΓ࢝Ίͨɻ ͦͯͦ͠ͷλΫγʔతΛฉ͘͜ͱͳ͘ਓΛతʹૹΔ͜ͱ͕Ͱ͖ͨɻ Ұମͳͥʁ ͍͍͑ λΫγʔΛݺΜͩͱ͖ʹ
͢ͰʹతΛ͍͑ͯ·͔ͨ͠ʁ ͍͍͑ ਓͷੑผؔ͋Γ·͔͢ʁ ͍ తපӃͰ͔͢ʁ ͍ ճ͠·͢ɻ්͞Μ͔ͩͬͨΒͰ͔͢ʁ ਖ਼ղ ݹ༸ฏஶͻΒΊ͖Λ͑ΔφκτΩਫฏࢥߟΫΠζ ݬౙࣷ ΑΓ IUUQTXXXHFOUPTIBDPKQCPPLEFUBJM
࿅श
w "͞Μ͕ΞΧϯτΛొ͢Δͱϝʔϧ͕௨ૹ৴͞Ε·ͨ͠ w #͞Μ͕ΞΧϯτΛొ͢Δͱϝʔϧ͕௨ૹ৴͞Ε·ͨ͠ ௨ૹ৴͞ΕΔ
ʲճʳ௨ૹ৴͞ΕΔ w ొϘλϯ͕ෳճΫϦοΫͰ͖ΔΑ͏ʹͳ͍ͬͯͨ w σʔλϕʔεಉ͡ใ͕ॏෳొͰ͖ΔΑ͏ʹͳ͍ͬͯͨ
ʮϩάΠϯͰ͖ͳ͍ΞΧϯτ͕͋ΔΜͰ͢ʯ
ϩάΠϯͰ͖ͳ͍ΞΧϯτ w ZPTIJUBLFUFTU YYY!FYBNQMFDPNͰϩάΠϯͰ͖ͳ͍ ˞υϝΠϯϝʔϧ͕ૹ৴͞ΕΔͷ w ϩάΠϯը໘ͷʮύεϫʔυΛΕͨํͪ͜Βʯಈ͘ ɾϝʔϧૹ৴͞ΕΔ
ɾϝʔϧͷ63-͔Βύεϫʔυ࠶ઃఆͰ͖Δ w ͰϩάΠϯͰ͖ͳ͍
ʲճʳϩάΠϯͰ͖ͳ͍ΞΧϯτ w ςετڥͷதʹɺຊ൪ڥʹભҠ͢Δ63-͕͋ͬͨ w ςετதʹຊ൪ڥʹ໎͍ࠐΜͰ͠·͍ɺ ຊ൪ڥͷϩάΠϯը໘͔ΒςετڥͰ࡞ͬͨΞΧϯτͰ ϩάΠϯ͠Α͏ͱ͍ͯͨ͠ ςετڥ
ຊ൪ڥ
ʮϩάΠϯͰ͖ͳ͍ΞΧϯτ͕͋ΔΜͰ͢ʯ ͦͷ
ϩάΠϯͰ͖ͳ͍ΞΧϯτᶄ w ZPTIJUBLFUFTU YYY!FYBNQMFDPNͰϩάΠϯͰ͖ͳ͍ ˞υϝΠϯϝʔϧ͕ૹ৴͞ΕΔͷ w ϩάΠϯը໘ͷʮύεϫʔυΛΕͨํͪ͜Βʯಈ͘ ɾϝʔϧૹ৴͞ΕΔ
ɾϝʔϧͷ63-͔Βύεϫʔυ࠶ઃఆͰ͖Δ w ͰϩάΠϯͰ͖ͳ͍ ɾผͷϝʔϧΞυϨεͰΞΧϯτΛొ͢Δͱ ɹͳ͘ϩάΠϯͰ͖Δ
ʲճʳϩάΠϯͰ͖ͳ͍ΞΧϯτᶄ w ΞΧϯτ͕ೋॏొ͞ΕΔ ɾϩάΠϯ*%ͷখ͍͞ํ͔Β ɾύεϫʔυ࠶ઃఆ*%ͷେ͖͍ํ͔Β w ݁ՌϩάΠϯͰ͖ͳ͍
ɾ৽͍͠ύεϫʔυͰແཧ ɾมߋલͷύεϫʔυͰϩάΠϯͰ͖Δ *% ϝʔϧ ύεϫʔυ B!FYBNQMFDPN YYYY C!FYBNQMFDPN QBTTXPSE C!FYBNQMFDPN QBTTXPSE D!FYBNQMFDPN YYYY ϩάΠϯ ใมߋ
ʮঝೝͨͣ͠ͳͷʹ͍ͭͷؒʹ͔ະঝೝʯ
ঝೝͨͣ͠ͳͷʹ͍ͭͷؒʹ͔ະঝೝ w ͦͷαʔϏεΛ͏ͨΊʹ ΞΧϯτͷར༻ਃ Ծొ Λ͠ཧऀ͕ঝೝ͢Δඞཁ͕͋Δ w ͋Δɺཧऀ͕ΞΧϯτҰཡΛ֬ೝ͢Δͱ
ঝೝͨͣ͠ͷΞΧϯτ͕ͳ͔ͥະঝೝʹͳ͍ͬͯͨ ᶃར༻ਃ ᶅঝೝ ᶄΞΧϯτ(ະঝೝ) ᶆΞΧϯτ(ঝೝ) ΞΧϯτ(ະঝೝ)
ʲճʳঝೝͨͣ͠ͳͷʹ w Ϣʔβʔ͕ར༻ਃͨ͠ͱ͖ɺ ະঝೝͱ͍͏ܗͰΞΧϯτ͕࡞ΒΕΔ w Ϣʔβʔ͕ϩάΠϯը໘ͷʮύεϫʔυΛΕͨํͪ͜Βʯ ͔ΒύεϫʔυΛมߋ͢Δͱ ʮΞΧϯτΛॳظঢ়ଶʹ͢ʯͱ͍͏ॲཧʹͳ͍ͬͯͨ
ʮصʹஔ͍ͯىಈ͢ΔͱΫϥογϡ͢Δʯ
صʹஔ͍ͯىಈ͢ΔͱΫϥογϡ͢Δ w ςετ༻ʹεϚʔτϑΥϯΛصʹฒͯஔ͍ͨ w ͦͷ··ςετ༻ͷΞϓϦΛॱ൪ʹىಈ͢Δͱɺ ͚ͩΫϥογϡͨ͠
ʲճʳصʹஔ͍ͯىಈ͢ΔͱΫϥογϡ͢Δ w -BOETDBQFͰىಈ͢ΔͱΫϥογϡ͢Δͱ͍͏ෆ۩߹͕͋ͬͨ ɾ-BOETDBQFΛԣ͖ w صʹ͓͍ͨͱ͖ɺ͍͔ͭ͘ͷͰ1PSUSBJUͰͳ͘-BOETDBQF ͷఆʹͳ͍ͬͯͨ
ʮ͍ͭͷؒʹ͔ϗʔϜը໘ʹΔʯ
͍ͭͷؒʹ͔ϗʔϜը໘ʹΔ w ςετ༻ͷΞϓϦΛىಈͯ͠صʹஔ͍ͨ w ಉ࣌ʹςετ͠Α͏ͱ͏ͷεϚʔτϑΥϯͰ ΞϓϦΛىಈͨ͠ w ࠷ॳʹصʹஔ͍ͨεϚʔτϑΥϯΛݟΔͱϗʔϜը໘ʹ͍ͬͯͨ w
खݩʹ͍࣋ͬͯͨεϚʔτϑΥϯϗʔϜը໘ʹ͍ͬͯͨ
ʲճʳ͍ͭͷؒʹ͔ϗʔϜը໘ʹΔ w ىಈͨ͠ޙɺඵʹɺࣗಈͰ"1*ΛΞΫηε͢Δػೳ͕͋ͬͨ w ͜ͷϨεϙϯε͕λΠϜΞτͨ͠ͱ͖ɺΫϥογϡ͍ͯͨ͠ 408 Request Timeout
ʮจͯ͠ͳ͍ͷʹൃૹϝʔϧ͕ಧ͍ͨʯ
จͯ͠ͳ͍ͷʹൃૹϝʔϧ͕ಧ͍ͨ w จͯ͠ͳ͍ͷʹൃૹ͠·ͨ͠ͱϝʔϧ͕ಧ͖·ͨ͠ w จྃϝʔϧͱൃૹϝʔϧผͰૹ৴͞ΕΔ w จྃϝʔϧಧ͍ͯͳ͍
ճจͯ͠ͳ͍ͷʹൃૹϝʔϧ͕ಧ͍ͨ w ࠷৽จʮૹථ൪߸ʯʹɺաڈͬͨͷ͕ΘΕ͍ͯͨ ˠγεςϜͰૹථ൪߸͕͍ճ͞ΕΔ͜ͱΛఆͯ͠ͳ͔ͬͨ w ࠷৽ͷจͨ͠ਓͰͳ͘ɺաڈͷจऀʹϝʔϧ͕ૹ৴͞Εͨ
ਫฏࢥߟͱςετ w ਫฏࢥߟςετʹٻΊΒΕΔ͜ͱ͔ͳ͊ͱࢥ͏ ɾਨࢥߟ ཧతࢥߟੳతࢥߟ ඞཁͱࢥ͏ ɾࣄ͕ಉ͔ͩ͡Βͱ͍ͬͯݪҼ͕ಉ͡ͱݶΒͳ͍
ɾશવؔͳͦ͞͏ͳૢ࡞͕Өڹͯ͘͠Δ͜ͱ͋Δ w ࣄɺෆ۩߹ɺצҧ͍ΛΔͱɺ૾Ͱ͖ΔΑ͏ʹͳΔ ɾͳΜͰͦ͏ͳͬͨͷʁͳΜͰͦΕؾ͍ͮͨͷʁͱ͔ؾʹͳͬͯ͘Δ ɾࠓͬͯͳ͍͚Ͳɺ͡Ό͋Ͳ͏ಈ͍ͨΒ͍͍͔ͳʁߟ͑Δ ɾใަͷํͷͭͱͯ͠ɺ͜͏͍͏ͷָ͍͠
ςετϥδΦ w ࠓͬͨ͜ͱςετϥδΦͰͨ·ʹͬͯ·͢ ɾςετϥδΦʜςετΛςʔϚʹΏΔ͍ͯ͘͠Δ1PEDBTU w ςετϥδΦ ɾ)1IUUQTUFTUSBEJPGN
ɾ:PV5VCFIUUQTXXXZPVUVCFDPN!VTFSGPDVTKU ɾπΠΩϟεIUUQTUXJUDBTUJOHUWIJSPZVLJHPVBSDIJWF