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
テストを書くか書かないかの状況判断 / Deciding whether to write t...
Search
Takuto Wada
PRO
December 09, 2014
Programming
26
21k
テストを書くか書かないかの状況判断 / Deciding whether to write tests - DeNA Tech Talk
2014/12/09 に DeNA 社内勉強会にお招きいただいて話した内容です
Takuto Wada
PRO
December 09, 2014
Tweet
Share
More Decks by Takuto Wada
See All by Takuto Wada
予防に勝る防御なし(2025年版) - 堅牢なコードを導く様々な設計のヒント / Growing Reliable Code PHP Conference Fukuoka 2025
twada
PRO
25
7.1k
SQLアンチパターン第2版 データベースプログラミングで陥りがちな失敗とその対策 / Intro to SQL Antipatterns 2nd
twada
PRO
43
22k
AI時代のソフトウェア開発を考える(2025/07版) / Agentic Software Engineering Findy 2025-07 Edition
twada
PRO
172
87k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
114
89k
The Clean ArchitectureがWebフロントエンドでしっくりこないのは何故か / Why The Clean Architecture does not fit with Web Frontend
twada
PRO
83
35k
組織に自動テストを書く文化を根付かせる戦略(2024冬版) / Building Automated Test Culture 2024 Winter Edition
twada
PRO
36
13k
ピラミッド、アイスクリームコーン、SMURF: 自動テストの最適バランスを求めて / Pyramid Ice-Cream-Cone and SMURF
twada
PRO
10
2.7k
組織に自動テストを書く文化を根付かせる戦略(2024秋版) / Building Automated Test Culture 2024 Autumn Edition
twada
PRO
14
7.2k
これまでと違う学び方をしたら挫折せずにRustを学べた話 / Programming Rust techramen24conf LT
twada
PRO
34
29k
Other Decks in Programming
See All in Programming
CSC305 Lecture 14
javiergs
PRO
0
230
AIと人間の共創開発!OSSで試行錯誤した開発スタイル
mae616
2
880
Kotlin 2.2が切り拓く: コンテキストパラメータで書く関数型DSLと新しい依存管理のかたち
knih
0
310
Inside of Swift Export
giginet
PRO
1
380
フロントエンド開発のためのブラウザ組み込みAI入門
masashi
7
3.7k
GitHub Copilotを使いこなせ!/mastering_github_copilot!
kotakageyama
2
770
マンガアプリViewerの大画面対応を考える
kk__777
0
460
Node-REDのノードの開発・活用事例とコミュニティとの関わり(Node-RED Con Nagoya 2025)
404background
0
120
Researchlyの開発で参考にしたデザイン
adsholoko
0
110
Introduce Hono CLI
yusukebe
6
3.3k
Reactive Thinking with Signals and the Resource API
manfredsteyer
PRO
0
120
Vue 3.6 時代のリアクティビティ最前線 〜Vapor/alien-signals の実践とパフォーマンス最適化〜
hiranuma
2
380
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Git: the NoSQL Database
bkeepers
PRO
431
66k
For a Future-Friendly Web
brad_frost
180
10k
Gamification - CAS2011
davidbonilla
81
5.5k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The Pragmatic Product Professional
lauravandoore
36
7k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Transcript
ςετΛॻ͔͘ ॻ͔ͳ͍͔ͷ ঢ়گஅ ాਓ BLBJEUXBEBPS!U@XBEB %FD !%F/"
ాਓ JEUXBEB !U@XBEB HJUIVCUXBEB
None
֤ॴͰҖΛৼΔ͏U@XBEBQOH ͪͳΈʹ͜ͷίϥը૾Λ࡞ͬͨͷ!ZPTVLF@GVSVLBXB
ΑΖ͘͠ ͓ئ͍͠·͢
lςετΛॻ͘ ͕࣌ؒແ͍z
ετϨε ςετ ετϨεͱࣗಈςετͷJO fl VFODFEJBHSBN 5%%CZ&YBNQMFΑΓ നؙ͖ҹෛͷଓࠜݩ͕૿͑ΕઌݮΔɻࠜݩ͕ݮΕઌ૿͑Δ
ࣗಈςετ ετϨε ετϨεͱࣗಈςετͷJO fl VFODFEJBHSBN 5%%CZ&YBNQMFΑΓ നؙ͖ҹෛͷଓࠜݩ͕૿͑ΕઌݮΔɻࠜݩ͕ݮΕઌ૿͑Δ
ςετΛॻ͕࣌ؒ͘ͳ͍ͷͰ ͳ͘ɺςετΛॻ͔ͳ͍͔ Β͕࣌ؒͳ͘ͳΔͷͰ͢ɻ
ͲΜͳͱ͖ςετ Λશ͘ॻ͔ͳ͍͔
wϫϯϥΠφʔ wҰճݶΓͷεΫϨΠϐϯά wσϞʹ͏ίʔυ wͨͩ͠ɺ࣮ߦճ͕Ͱͳ͍ wҰճݶΓͷσʔλҠߦεΫϦϓτʹ ςετΛॻ͘ ॻ͖ࣺͯͷίʔυ
wςετʹΑΔ҆ఆͨ͠ϑΟʔυόοΫϧʔϓ Λ࡞Δલஈ֊ w৽͍͠ϑϨʔϜϫʔΫΛࢼ͍ͯ͠Δஈ֊ͳͲ ؚ·ΕΔ wςετΑΓ͍ϑΟʔυόοΫ͕ཉ͍͠ w3&1-σόοΨͰֶΜͩ͜ͱΛςετʹ ༁͍ͯ͘͠ w࠶ݱੑΛςετͰิڧ͢ΔΠϝʔδ ࢼߦࡨޡஈ֊ͷͱ͖
8IZ ސ٬ԿނͦΕΛཉ ͍ͯ͠Δͷ͔ 8IBU ԿΛ࡞Ε ྑ͍ͩΖ͏͔ )PX Ͳ͏࡞Ε ྑ͍ͩΖ͏͔ සൟͳϦϦʔεͱσϞ
ड͚ೖΕςετ Ϣχοτςετ ӬγεςϜϚωδϝϯτՈӬࢯͷࢿྉΑΓ ରڥʹΑΔࢼߦࡨޡΛ͍ͯ͠Δͱ͖
IUUQTXXXGBDFCPPLDPNOPUFTLFOUCFDLXIFOUEEEPFTOUNBUUFS
ͲΜͳςετΛ ॻ͔ͳ͍Α͏ʹ͠ ͍ͯΔ͔
wςετରҎ֎͕ϞοΫ wςετ࣮ߦΛ͘͢ΔͨΊ͚ͩͷϞοΫ wதؒϨΠϠͷʮϢχοτʯςετ wͨͱ͑ίϯτϩʔϥͷςετ wΧόϨοδ্ૂ͍ͷςετ wQSJWBUFϝιουͷςετ खஈͷతԽ
wݴޠϑϨʔϜϫʔΫɺج൫ͷςετ wࣗಈੜͨ͠··ͷίʔυͷςετ wը໘ϨΠΞτΛϐΫηϧϨϕϧͰ ৺ੑ͗͢Δςετ
w৺͕ୀ۶ʹมΘΔ·Ͱςετ͢Δ wୀ۶͞ͱٛײΛײ͡ΔͳΒͦΕΛϓϩά ϥϛϯάରʹ͢ΔɻͰ͖ͳ͚ΕΊΔ w5%% ςετϑΝʔετʹͩ͜ΘΒͳ͍ w͋ͱ͔ΒςετΛॻ͍ͯશ͔͘·Θͳ͍ wͰ͖Εͦͷͷ͏ͪʹॻ͍͓͖͍ͯͨ ٛײʹ͔ΒΕͨςετ
ςετΛॻ͔ͳ͍ ٕज़
Y6OJU5FTU1BUUFSOTΑΓ ςετͷϝϯςφϯείετ ཧ ݱ࣮
wίʔυߦςετίʔυߦΛࢦͯ͠ΈΔ w·͋ී௨ͦ͜·Ͱ͍͔ͳ͍͕ɺ͕ࠩۃʹ։͖͗͢ ͳ͍Α͏ʹ͢Δ wϨΠϠؒॏෳΛݮΒ͢ wϨΠϠؒͷςετ༰ॏෳҰճ·Ͱͱ͢ΔɻͦΕ Ҏ্ͷॏෳঢ়گʹΑΔ wਖ਼ৗܥͷओཁಋઢ&&ʹدͤɺྫ֎ܥʹͳΔ΄ ͲϢχοτςετʹدͤΔ ςετΛॻ͖͗͢ͳ͍ͨΊʹ
w੩తݕূΛຯํʹ͚Δ wࢲ͕ͨͪΑ͘ʮςετίʔυʯͱݺΜͰ͍Δ ͷʮಈతςετʯɻରίʔυΛಈ͔͠ ͯςετ͢Δ wରίʔυΛಈ͔ͣ͞ʹςετ͢Δͷ͕੩ తݕূ wMJOU͔Βڧ͍੩తܕ͚·Ͱ͍Ζ͍Ζ ςετΛॻ͖͗͢ͳ͍ͨΊʹ
wϨΠϠͱநදݱྗΛϦϯΫͤ͞Δ w֎෦͔Βͷςετදݱྗ๛͔Ͱ͘ॻ͚ ΔΑ͏ʹ w%4-ผݴޠͰྑ͍ wϢχοτςετςετରͱಉ͡ݴޠ ͰɺϞοΫΛͳΔ͘Θͣɺͦͷ·· αϯϓϧίʔυͱͳΔΑ͏ʹॻ͘ ςετΛॻ͖͗͢ͳ͍ͨΊʹ
.BLFFBDIQSPHSBNEPPOFUIJOHXFMM IUUQTHJUIVCDPNTVCTUBDLOPEFGFTU
IUUQTXXX fl JDLSDPNQIPUPTUPNQBHFOFU ςετ࣭Λ্͛ͳ͍ ମॏܭʹΔ͚ͩͰ ૫ͤͳ͍ͷͱಉ͡
lςετͰ্࣭͕Βͳ͍ Ͱ͢Αɻςετ͋͘·Ͱ ࣭Λ͋͛Δ͖͔͚ͬɻ࣭Λ͋ ͛ΔͷϓϩάϥϛϯάͰ͢ɻ ͜Εେੲ͔Βͦ͏ɻz
ࣗಈςετͷྑ͍ͱ͜Ζɺ վળΛզຫ͠ͳͯ͘ྑ͘ ͳͬͨ͜ͱ
wଈ࠲ʹϑΟʔυόοΫΛಘΔͨΊ wॻ͍ͨίʔυʹࣗ৴Λ࣋ͭͨΊ w͜Ε͔Βॻ͘ίʔυʹࣗ৴Λ࣋ͭͨΊ 5%%%FWFMPQFS5FTUJOHʹ ιϑτΣΞֶతͳϝϦοτ͍Ζ͍ Ζ͋ΕͲɺ࠷େͷཧ༝৺ཧతͳͷ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠