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 Durable Functions で作った NL2SQL Agent の精度向上に取り組んだ話/jat08
thara0402
0
180
Amazon S3 Vectorsを使って資格勉強用AIエージェントを構築してみた
usanchuu
3
450
FinTech SREのAWSサービス活用/Leveraging AWS Services in FinTech SRE
maaaato
0
130
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
450
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
120
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
170
小さく始めるBCP ― 多プロダクト環境で始める最初の一歩
kekke_n
1
410
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
240
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
760
学生・新卒・ジュニアから目指すSRE
hiroyaonoe
2
610
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
200
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
Featured
See All Featured
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Test your architecture with Archunit
thirion
1
2.2k
How STYLIGHT went responsive
nonsquared
100
6k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
62
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
Building the Perfect Custom Keyboard
takai
2
680
Typedesign – Prime Four
hannesfritz
42
2.9k
Marketing to machines
jonoalderson
1
4.6k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.6k
[SF Ruby Conf 2025] Rails X
palkan
1
750
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
50k
Balancing Empowerment & Direction
lara
5
890
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