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
みんなテストってどうやってるの?
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
OSCA
February 23, 2018
Technology
530
0
Share
みんなテストってどうやってるの?
様々な業種のシステムを開発している参加者に「それぞれの開発現場でどのようにテストをやっているのか?」の共有と意見交換を目的としたディスカッションを開催しました。
OSCA
February 23, 2018
More Decks by OSCA
See All by OSCA
人工肉を食べよう / Let's eat fake meat
oscasierra
4
1.4k
WEBサイトを HTTP/2 に移行した話 / HTTP2
oscasierra
1
2.2k
次世代の認証(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
990
HTTPレイヤーで行うパフォーマンスチューニング (WEBエンジニア勉強会 #05)
oscasierra
1
3.4k
Other Decks in Technology
See All in Technology
今年60歳のおっさんCBになる
kentapapa
2
380
みんなで作るAWS Tips 100連発 (FinOps編)
schwrzktz
1
160
Databricksで構築するログ検索基盤とアーキテクチャ設計
cscengineer
0
180
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.4k
プロダクトを触って語って理解する、チーム横断バグバッシュのすすめ / 20260411 Naoki Takahashi
shift_evolve
PRO
1
280
Bluesky Meetup in Tokyo vol.4 - 2023to2026
shinoharata
0
180
Zero-Downtime Migration: Moving a Massive, Historic iOS App from CocoaPods to SPM and Tuist without Stopping Feature Delivery
kagemiku
0
230
Azure Lifecycle with Copilot CLI
torumakabe
3
770
Master Dataグループ紹介資料
sansan33
PRO
1
4.6k
OBI+APMでお手軽にアプリケーションのオブザーバビリティを手に入れよう
kenshimuto
0
280
QGISプラグイン CMChangeDetector
naokimuroki
1
160
ふりかえりを 「あそび」にしたら、 学習が勝手に進んだ / Playful Retros Drive Learning
katoaz
0
480
Featured
See All Featured
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.1k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
Evolving SEO for Evolving Search Engines
ryanjones
0
180
It's Worth the Effort
3n
188
29k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.3k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
160
GitHub's CSS Performance
jonrohan
1032
470k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.5k
Making Projects Easy
brettharned
120
6.6k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
250
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 ·ͱΊ ·ͱ·Γ·ͤΜ