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
Test-driven-Development mit TYPO3
Search
Oliver Klee
September 12, 2017
Technology
0
180
Test-driven-Development mit TYPO3
Oliver Klee
September 12, 2017
Tweet
Share
More Decks by Oliver Klee
See All by Oliver Klee
Gewaltfreie Kommunikation: ein Crashkurs
oliverklee
0
88
Team-Management-Plattform
oliverklee
0
72
Vertrauen in Teams & Führung
oliverklee
0
260
Software-Qualität von TYPO3-Extensions automatisieren
oliverklee
0
44
Vertrauen in Teams & Führung
oliverklee
0
160
Testing von TYPO3-Extensions
oliverklee
0
86
Software-Qualität von Extensions automatisieren
oliverklee
1
55
Content-Synchronisierung
oliverklee
0
170
Gewaltfreie Kommunikation: ein Crashkurs
oliverklee
0
330
Other Decks in Technology
See All in Technology
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
550
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
590
Amazon Bedrock Knowledge Basesチャンキング解説!
aoinoguchi
0
140
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
470
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
2
200
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.8k
AI駆動PjMの理想像 と現在地 -実践例を添えて-
masahiro_okamura
1
110
Agile Leadership Summit Keynote 2026
m_seki
1
620
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
930
20260204_Midosuji_Tech
takuyay0ne
1
160
データの整合性を保ちたいだけなんだ
shoheimitani
8
3.1k
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
140
Featured
See All Featured
Side Projects
sachag
455
43k
Tell your own story through comics
letsgokoyo
1
810
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
120
Between Models and Reality
mayunak
1
190
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
450
YesSQL, Process and Tooling at Scale
rocio
174
15k
Paper Plane
katiecoart
PRO
0
46k
Darren the Foodie - Storyboard
khoart
PRO
2
2.4k
The Spectacular Lies of Maps
axbom
PRO
1
520
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Facilitating Awesome Meetings
lara
57
6.8k
Transcript
Test-driven- Development mit TYPO3 Oliver Klee, 2017-09 @oliklee
[email protected]
Unit- Tests?
Manuelles Testen ist mühsam
Automatisierte Tests sind schnell
Unit-Tests für die Realty-Manager- TYPO3-Extension
>1600 Tests
< 60 Sekunden
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
Grün fühlt sich gut an!
None
Lasst uns ein paar Begriffe klarstellen
Die zwei Programmier-Modi sauber hacky
Testsuite Testcase Test Assertion Test Test Testcase
Lebenszyklus eines Tests new FooTest(); setUp(); /** @test */ lifeIsGood();
tearDown();
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
None
Test-Level http://filipdefar.com/2015/06/tested-be-thy-name.html
Unit-Tests sind klein und schnell
Integrationstests testen das Zusammenspiel von Komponenten in TYPO3: „Functional Tests“
Systemtests testen das große Ganze
Test-Typen
Blackbox-Tests testen das nach außen Sichtbare
Whitebox-Tests wie genau es innen funktioniert testen,
Functional Tests
Akzeptanztests
Anti- Zombie- Tests-
Regressionstests
Smoketests
Smoketests
Story-Tests für Behavior-Driven Development (BDD)
None
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
None
Code- Kata
None
Kenne Werkzeuge deine
TYPO3-Testing-Frameworks TYPO3 CMS PHPUnit PHP Fokus typo3/ testing- framework 8.5.x-9.x
6.2.x 7.0.x-7.1.x Core (Extensions) nimut/ testing- framework 6.2.x-8.7.x (6.2.x-9.x) 4.8.x-5.7.x 5.3.x-7.1.x Extensions