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
20k
テストを書くか書かないかの状況判断 / 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
組織に自動テストを書く文化を根付かせる戦略(2024冬版) / Building Automated Test Culture 2024 Winter Edition
twada
PRO
29
8.7k
ピラミッド、アイスクリームコーン、SMURF: 自動テストの最適バランスを求めて / Pyramid Ice-Cream-Cone and SMURF
twada
PRO
10
1.7k
組織に自動テストを書く文化を根付かせる戦略(2024秋版) / Building Automated Test Culture 2024 Autumn Edition
twada
PRO
14
6.2k
これまでと違う学び方をしたら挫折せずにRustを学べた話 / Programming Rust techramen24conf LT
twada
PRO
26
25k
開発生産性の観点から考える自動テスト(2024/06版) / Automated Test Knowledge from Savanna 202406 Findy dev-prod-con edition
twada
PRO
34
24k
自動テスト実行結果の目的を整理する / Organizing objectives of automated test results
twada
PRO
14
3.2k
変更容易性と理解容易性を支える自動テスト(2024/02版) / Automated Test Knowledge from Savanna 202402 YAPC::Hiroshima edition
twada
PRO
22
13k
実録レガシーコード改善 / Working with Legacy Code: the True Record
twada
PRO
111
50k
Property-based Testing の位置付け / Intro to Property-based Testing
twada
PRO
11
6.5k
Other Decks in Programming
See All in Programming
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
150
Java Webフレームワークの現状 / java web framework at burikaigi
kishida
9
2.2k
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
110
時計仕掛けのCompose
mkeeda
1
300
Rubyで始める関数型ドメインモデリング
shogo_tksk
0
110
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
250
sappoRo.R #12 初心者セッション
kosugitti
0
250
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
210
Conform を推す - Advocating for Conform
mizoguchicoji
3
690
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.3k
Kubernetes History Inspector(KHI)を触ってみた
bells17
0
230
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
270
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
Site-Speed That Sticks
csswizardry
4
380
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
How to train your dragon (web standard)
notwaldorf
91
5.8k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
BBQ
matthewcrist
87
9.5k
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ʹ ιϑτΣΞֶతͳϝϦοτ͍Ζ͍ Ζ͋ΕͲɺ࠷େͷཧ༝৺ཧతͳͷ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠