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
みんなテストってどうやってるの?
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
OSCA
February 23, 2018
Technology
540
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
みんなテストってどうやってるの?
様々な業種のシステムを開発している参加者に「それぞれの開発現場でどのようにテストをやっているのか?」の共有と意見交換を目的としたディスカッションを開催しました。
OSCA
February 23, 2018
More Decks by OSCA
See All by OSCA
人工肉を食べよう / Let's eat fake meat
oscasierra
4
1.5k
WEBサイトを HTTP/2 に移行した話 / HTTP2
oscasierra
1
2.3k
次世代の認証(WebAuthn/FIDO2)について説明を試みる
oscasierra
2
1.5k
WEBサイトが「できた」と安心する前に最終チェックすること
oscasierra
1
2.1k
Service Worker
oscasierra
1
1.5k
Growth of Podcast
oscasierra
0
1.6k
AIの知識無しでもAIを活用したQ&Aページを作る方法
oscasierra
1
1.2k
はじめてのサーバレス関数 (WEBエンジニア勉強会 #06)
oscasierra
0
1k
HTTPレイヤーで行うパフォーマンスチューニング (WEBエンジニア勉強会 #05)
oscasierra
1
3.5k
Other Decks in Technology
See All in Technology
スキマバイトという雇用形態は存在しないので、雇用期間1日のアルバイト契約を事業者とワーカーが結ぶ手続きを支えるのがタイミーなんです
akitoshiga
0
100
DGX Spark でどこまでハッキングができるのか?
kash1064
0
870
USB PDを使ってスマホを労わりたい
raspython3
0
160
おそらく日本で唯一のDevRelインターン生として
husengs7
0
170
Jetson Orin Nanoとk3sとローカルLLMで音声文字起こしシステム作ってみた
y_sera15
0
120
今こそ知りたいAmplifyGen2
mkdev10
2
160
TinyGoでオブザーバビリティ?OpenTelemetryはTinyGoで使えるのか / Is OpenTelemetry available in TinyGo environment?
ymotongpoo
2
140
転んだ話が背中を預ける理由になる / A_story_about_falling_down_gives_you_a_reason_to_watch_each_other_s_backs.pdf
pauli
3
360
組み立てて楽しむ AWS Blocks 入門
kmiya84377
0
230
ai_cording_with_k8s_knowledge.pdf
mochizuki875
1
340
Snapshot Testing in Practice: Predictable and Reliable SwiftUI Views
fespinoza
0
190
分析の民主化を支えるメタデータ整備の実践
kakehashi
PRO
4
1.3k
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1033
470k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
470
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
490
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
So, you think you're a good person
axbom
PRO
2
2.2k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
4
4.3k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
360
Ruling the World: When Life Gets Gamed
codingconduct
0
400
Rails Girls Zürich Keynote
gr2m
96
14k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
KATA
mclloyd
PRO
35
16k
Building AI with AI
inesmontani
PRO
1
1.3k
Transcript
04$" ᖛ Ұೋࡾ !FOHJOFFS@PTDB ΈΜͳςετͬͯͲ͏ͬͯΔͷʁ
ࣗݾհ © OSCA 04$"ᖛ Ұೋࡾ ·ͷ ͔ͣ;Έ 4*FS ܠࣸਅՈ
+BWB 1)1ϝΠϯͷ8&#ΤϯδχΞ ਓೳ "* ษڧத 8&#ΤϯδχΞษڧձΛओ࠵ !FOHJOFFS@PTDB c!PTDBQIPUP c!EJTOFZ@PTDB
© OSCA ςετ͖Ͱ͔͢ʁ
© OSCA 4*FSͰಇ͘"͞Μɺ৽͍͠8&#γεςϜͷϓϩδΣΫτ Λ͞Ε·ͨ͠ɻ "͞Μɺਖ਼Ͱ࣮ͳ੨Ͱ͢ɻ ͬͦ͘͞"͞Μ։ൃཁ݅ΛཧதͰ͢ɻ ʮ࣍ςετఔʹ͍ͭͯͷཧͩɻ ͓٬༷ɺͲΜͳ෩ ʹςετͯ͠ཉ͍͠ͷ͔ͳ͊ʁ ͪΐ͏Ͳ໌ɺސ٬ͱͷଧ
ͪ߹Θ͕ͤ͋Δ͔Βɺͬ͘͟ΒΜʹཁΛώΞϦϯάͯ͠ ΈΑ͏ʂʯ ংষ
© OSCA "͞Μ ʮԿ͔ςετఔͰ͝ཁ͋Γ·͔͢ʁ ԿͳΓͱ͓ਃ͠ ͚͍ͩ͘͞ʯ ʹͬ͜Γ ٬"ʮͱΓ͋͑ͣɺόάθϩͰ͓ئ͍͠·͢ʯ ٬#ɿʮςετʁͪΖΜ࠷খݶͰ͓ئ͍͠·͢ʯ ٬$ɿʮೲʁΒΜ͚Ͳɺςετίʔυɾ༷ॻશ෦ʯ
٬%ɿʮཏੑʁΒΜ͚ͲɺશέʔεɾશΫϥε͔ͳʯ ٬&ɿʮςετίʔυͷಈ͔͠ํͷϚχϡΞϧೲͯ͠ʯ ংষ
© OSCA "͞Μ ʮԿ͔ςετఔͰ͝ཁ͋Γ·͔͢ʁ ԿͳΓͱ͓ਃ͠ ͚͍ͩ͘͞ʯ ʹͬ͜Γ ٬"ʮͱΓ͋͑ͣɺόάθϩͰ͓ئ͍͠·͢ʯ ٬#ɿʮςετʁͪΖΜ࠷খݶͰ͓ئ͍͠·͢ʯ ٬$ɿʮೲʁΒΜ͚Ͳɺςετίʔυɾ༷ॻશ෦ʯ
٬%ɿʮཏੑʁΒΜ͚ͲɺશέʔεɾશΫϥε͔ͳʯ ٬&ɿʮςετίʔυͷಈ͔͠ํͷϚχϡΞϧೲͯ͠ʯ ংষ ࢮ
© OSCA ΈΜͳςετͬͯͲ͏ͬͯΔͷʁ ͜ͷηογϣϯɺօ͞ΜࢀՃܕͷΦʔϓϯσΟεΧογϣ ϯܗࣜͰ͢ɻ ͨ͘͠ͳͬͨΒɺ͍ͭͰޱΛڬΜͰͩ͘ ͍͞ʂ ˞ҙ˞ • ʮਖ਼ղʯ͕ͳ͍ςʔϚͳͷͰɺ༏͍͠ؾ࣋ͪͰଞͷࢀՃ
ऀͷҙݟΛฉ͍͍ͯ͋͛ͯͩ͘͞ɻ
© OSCA ΦʔϓϯσΟεΧογϣϯ
© OSCA ςετͷΛ͢Δͱ͖ʹ͍͜͠ͱ ਓͦΕͧΕͷόοΫάϥϯυ͕͋Γ·͢ɻ • ͍ؒɺಉ͡αʔϏεΛϝϯςφϯε͠ଓ͚͍ͯΔਓ • ೲͨ͠ΒऴΘΓͷϓϩδΣΫτͷਓ • ίετͰςετΛऴΘΒ͢͜ͱׂ͕ͷਓ
• ҆৺ײॏࢹͰɺͱʹ͔͘શͯΛςετͷରʹ͍ͨ͠ਓ • ਓͷೖΕସΘΓ͕ଟ͍গͳ͍ݱͷਓ • όά͕͋ͬͨ߹ɺ͓٬༷ʹઌਞͬͯँΔׂͷਓ
© OSCA ͓̍ʮखಈɾࣗಈͷڥքʯ ςετʹɺࣗಈԽͰ͖Δ෦ͱͰ͖ͳ͍෦͕͋Γ·͢ɻ օ͞ΜɺͲͷΑ͏ʹઢҾ͖Λ͍ͯ͠·͔͢ʁ ϓϩδΣΫτʹ͓͚Δ ςετ૯ྔ
© OSCA ͓̍ʮखಈɾࣗಈͷڥքʯ ςετʹɺࣗಈԽͰ͖Δ෦ͱͰ͖ͳ͍෦͕͋Γ·͢ɻ օ͞ΜɺͲͷΑ͏ʹઢҾ͖Λ͍ͯ͠·͔͢ʁ ϓϩδΣΫτʹ͓͚Δ ςετ૯ྔ खಈͰςετ͢Δ߲ ࣗಈԽͯ͠ςετ͢Δ߲
© OSCA ͓̍ʮखಈɾࣗಈͷڥքʯ ςετʹɺࣗಈԽͰ͖Δ෦ͱͰ͖ͳ͍෦͕͋Γ·͢ɻ օ͞ΜɺͲͷΑ͏ʹઢҾ͖Λ͍ͯ͠·͔͢ʁ ϓϩδΣΫτʹ͓͚Δ ςετ૯ྔ खಈͰςετ͢Δ߲ ࣗಈԽͯ͠ςετ͢Δ߲ ϒϥβͰͷૢ࡞ੑ
৭ ϨΠΞτ ૯߹ςετɾγφϦΦςετ ܁Γ͔͑͠ςετΛ͠ͳ͍߲ ڞ௨Ϋϥεɾؔɾ"1* ୯ମςετ ͳΜͲ܁Γฦ͠ςετΛ͢Δର <Ωʔϫʔυ> • Y6OJU +6OJU 1)16OJU • 4FMFOJVN • $* +FOLJOT 5SBWJT
© OSCA ͓ʮςετΛࣗಈԽ͢ΔతͳΜͰ͔͢ʁʯ Y6OJU $*ͳͲΛར༻ͯ͠ɺςετΛࣗಈԽ͢Δతͳ ΜͰ͠ΐ͏͔ʁ
© OSCA ͓ʮςετΛࣗಈԽ͢ΔతͳΜͰ͔͢ʁʯ Y6OJU $*ͳͲΛར༻ͯ͠ɺςετΛࣗಈԽ͢Δతͳ ΜͰ͠ΐ͏͔ʁ ԿͰςετΛ࣮ߦͰ͖Δ෮ੑ
มߋϦϑΝΫλϦϯάͰ"1*Λ୲อ͢ΔͨΊ ҆৺ײ ιʔείʔυͰ༷Λදݱ͢ΔͨΊ
© OSCA ςετࣗಈԽͰ҆৺ײ͕ཉ͍͠ཧ༝ʁ • "1*Λյͣ͞ʹϦϑΝΫλϦϯά͍ͨ͠ͱ͖ • ػೳมߋ࣌ʹଞػೳʹӨڹ͕ͳ͍͜ͱΛ͔֬Ί͍ͨͱ͖ • ϒϥϯΫظ͕ؒ͋ͬͯιʔείʔυʹ৮Δͱ͖ •
୲ऀͷมߋ͕͋ͬͨͱ͖ ୀ৬ɾୀϓϩ
© OSCA ςετίʔυͰ༷Λදݱ͢Δ • ϏδωείʔυΛோΊΔΑΓɺςετίʔυΛோΊͨ ํ͕ݫີͳ༷Λཧղ͘͢͠Ͱ͖Δ߹͋Δɻ
© OSCA ͓ʮςετίʔυͲΕ͘Β͍ॻ͖·͔͢ʁʯ ϓϩδΣΫτʹ͓͚Δ ςετ૯ྔ खಈͰςετ͢Δ߲ ࣗಈԽͯ͠ςετ͢Δ߲
© OSCA Ͳͷ͘Β͍ςετΛॻ͍ͨΒྑ͍ͷ͔ʁ Controller Service BusinessB BusinessA Wrapper Util Util
Dao Dao Util ͖ͱͯ͠ʮςετΕΔ΄Ͳྑ͍ʯਖ਼͍͠ɻ
© OSCA ςετॻ͖͗͢ • શΫϥεɾؔΛςετ͢Δͷେมɻ • ෦ϩδοΫͳͲΛςετ͗͢͠ΔͱɺϦϑΝΫλϦϯ άͨ͠Γ͢Δͱ͖ʹ͔ͤʹͳΔ߹͕͋Δɻ
© OSCA %)) %BWJE)FJOFNFJFS )BOTTPO
© OSCA %)) %BWJE)FJOFNFJFS )BOTTPO 3VCZPO3BJMTͷ࡞ऀ
© OSCA %)) %BWJE)FJOFNFJFS )BOTTPO 3VCZPO3BJMTͷ࡞ऀ You’re probably doing it
wrong if testing is taking more than 1/3 of your time. You’re definitely doing it wrong if it’s taking up more than half. ࡞ۀ࣌ؒͷҎ্͕ςετʹؔ ͢Δ࡞ۀʹ͔͔͍ͬͯΔͱͨ͠Βɺ Կ͔ΓํΛؒҧ͍͑ͯΔɻ Ҏ্Λςετʹׂ͍͍ͯΔͱͨ͠ Βશʹؒҧ͍ͬͯΔɻ
© OSCA Ͳͷ͘Β͍ςετΛॻ͍ͨΒྑ͍ͷ͔ʁ ྫ 4FSWJDFϨΠϠʔ͚ͩશύλʔϯΔ Controller Service BusinessB BusinessA Wrapper
Util Util Dao Dao Util
© OSCA ·ͱΊ
© OSCA ·ͱΊ ·ͱ·Γ·ͤΜ