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
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Oliver Klee
May 30, 2023
Programming
140
0
Share
TDD für Senior-Devs
Oliver Klee
May 30, 2023
More Decks by Oliver Klee
See All by Oliver Klee
Gewaltfreie Kommunikation: ein Crashkurs
oliverklee
0
120
Team-Management-Plattform
oliverklee
0
85
Vertrauen in Teams & Führung
oliverklee
0
310
Software-Qualität von TYPO3-Extensions automatisieren
oliverklee
0
58
Vertrauen in Teams & Führung
oliverklee
0
170
Testing von TYPO3-Extensions
oliverklee
0
98
Software-Qualität von Extensions automatisieren
oliverklee
1
62
Content-Synchronisierung
oliverklee
0
180
Gewaltfreie Kommunikation: ein Crashkurs
oliverklee
0
380
Other Decks in Programming
See All in Programming
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
150
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
1.6k
Stage 3 Decorators でできること / できないこと / TSKaigi 2026
susisu
1
1.5k
AIエージェントの隔離技術の徹底比較
kawayu
0
460
AI駆動開発勉強会 広島支部 第一回勉強会 AI駆動開発概要とワークショップ
hayatoshimiu
0
430
関係性から理解する"同一性"の型用語たち
pvcresin
2
630
TypeSpec で繋ぐ複数プロダクトの型安全
maroon8021
1
360
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
2
560
Modding RubyKaigi for Myself
yui_knk
0
870
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
530
inferと仲良くなる10分間
ryokatsuse
1
360
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
150
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.5k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
300
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
200
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
The SEO identity crisis: Don't let AI make you average
varn
0
480
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
400
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
160
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
280
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
360
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