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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Oliver Klee
May 30, 2023
Programming
0
130
TDD für Senior-Devs
Oliver Klee
May 30, 2023
Tweet
Share
More Decks by Oliver Klee
See All by Oliver Klee
Gewaltfreie Kommunikation: ein Crashkurs
oliverklee
0
96
Team-Management-Plattform
oliverklee
0
73
Vertrauen in Teams & Führung
oliverklee
0
290
Software-Qualität von TYPO3-Extensions automatisieren
oliverklee
0
47
Vertrauen in Teams & Führung
oliverklee
0
160
Testing von TYPO3-Extensions
oliverklee
0
88
Software-Qualität von Extensions automatisieren
oliverklee
1
57
Content-Synchronisierung
oliverklee
0
170
Gewaltfreie Kommunikation: ein Crashkurs
oliverklee
0
340
Other Decks in Programming
See All in Programming
ロボットのための工場に灯りは要らない
watany
4
250
Ruby and LLM Ecosystem 2nd
koic
0
230
Docコメントで始める簡単ガードレール
keisukeikeda
1
110
AHC061解説
shun_pi
0
350
AI時代のソフトウェア開発でも「人が仕様を書く」から始めよう-医療IT現場での実践とこれから
koukimiura
0
140
Claude Code の Skill で複雑な既存仕様をすっきり整理しよう
yuichirokato
1
340
Codex の「自走力」を高める
yorifuji
0
1.1k
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
9
2.7k
Go 1.26でのsliceのメモリアロケーション最適化 / Go 1.26 リリースパーティ #go126party
mazrean
1
370
Geminiの機能を調べ尽くしてみた
naruyoshimi
0
200
エンジニアの「手元の自動化」を加速するn8n 2026.02.27
symy2co
0
110
SourceGeneratorのマーカー属性問題について
htkym
0
180
Featured
See All Featured
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
230
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
240
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
The Language of Interfaces
destraynor
162
26k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
First, design no harm
axbom
PRO
2
1.1k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
How GitHub (no longer) Works
holman
316
140k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
190
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
140
Prompt Engineering for Job Search
mfonobong
0
180
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
400
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