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
TDD für Senior-Devs
Search
Oliver Klee
May 30, 2023
Programming
0
97
TDD für Senior-Devs
Oliver Klee
May 30, 2023
Tweet
Share
More Decks by Oliver Klee
See All by Oliver Klee
Team-Management-Plattform
oliverklee
0
18
Vertrauen in Teams & Führung
oliverklee
0
130
Software-Qualität von TYPO3-Extensions automatisieren
oliverklee
0
7
Vertrauen in Teams & Führung
oliverklee
0
85
Testing von TYPO3-Extensions
oliverklee
0
23
Software-Qualität von Extensions automatisieren
oliverklee
1
11
Content-Synchronisierung
oliverklee
0
94
Gewaltfreie Kommunikation: ein Crashkurs
oliverklee
0
220
Motivationspsychologie und Gamification in Non-Profit-Organisationen
oliverklee
0
120
Other Decks in Programming
See All in Programming
情報漏洩させないための設計
kubotak
5
1.2k
LLM Supervised Fine-tuningの理論と実践
datanalyticslabo
8
1.8k
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
1.2k
PHPカンファレンス 2024|共創を加速するための若手の技術挑戦
weddingpark
0
110
CloudflareStack でRAGに入門
asahiiwm
0
140
return文におけるstd::moveについて
onihusube
1
1.4k
数十万行のプロジェクトを Scala 2から3に完全移行した
xuwei_k
0
490
バグを見つけた?それAppleに直してもらおう!
uetyo
0
210
Kaigi on Railsに初参加したら、その日にLT登壇が決定した件について
tama50505
0
130
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
210
103 Early Hints
sugi_0000
1
320
Findy Team+ Awardを受賞したかった!ベストプラクティス応募内容をふりかえり、開発生産性向上もふりかえる / Findy Team Plus Award BestPractice and DPE Retrospective 2024
honyanya
0
130
Featured
See All Featured
A Philosophy of Restraint
colly
203
16k
Designing for humans not robots
tammielis
250
25k
Code Review Best Practice
trishagee
65
17k
VelocityConf: Rendering Performance Case Studies
addyosmani
327
24k
Building Applications with DynamoDB
mza
92
6.1k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
Navigating Team Friction
lara
183
15k
How to Ace a Technical Interview
jacobian
276
23k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Facilitating Awesome Meetings
lara
50
6.2k
Adopting Sorbet at Scale
ufuk
74
9.1k
Transcript
Test-driven- Development für Senior-Devs Oliver Klee, 2023-xx @
[email protected]
|
[email protected]
Unit- Tests?
Automatisierte Tests sind schnell
Sicher sein, dass der Code das Richtige tut
Verhindern, dass deine Änderungen etwas anderes kaputt machen
Verhindern, dass andere Leute deinen Code kaputtmachen
Auch bei komplexen Projekten nichts kaputt machen
Baue ein Sicherheitsnetz fürs Refactoring oder für TYPO3-Updates
Verbessere die Struktur des Codes
Finde die Ursache von Bugs
Grün fühlt sich gut an!
Lasst uns ein paar Begriffe klarstellen
Die zwei Programmier-Modi sauber hacky
4 Test-Phasen Setup (aufbauen) setUp() Code in der Testmethode Exercise
(ausführen) Methodenaufruf Verify (prüfen) assert…() Teardown (abbauen) tearDown()
Schreibe zuerst den Test Test schreiben Code schreiben refactoren
Wozu führt TDD? höhere Coverage minimaler Code erst denken,
dann coden Tests testen, was der Code machen soll (statt, was er tatsächlich tut) fokussiertes Coden sauberere Code-Struktur
Test- Namen
Benutze aussagekräftige Test-Namen classCanBeInstantiated setTitleSetsTitle setSizeWithZeroThrowsException hasTitleForEmptyTitleReturnsFalse Benenne das Verhalten.
Nenne die Vorbedingungen. Nenne die Methode. Benutze nicht „works“ oder „correctly“. measureFrubbleWorksCorrectly