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
Testing für TYPO3-Extensions
Search
Oliver Klee
June 22, 2022
Programming
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Testing für TYPO3-Extensions
Oliver Klee
June 22, 2022
More Decks by Oliver Klee
See All by Oliver Klee
Gewaltfreie Kommunikation: ein Crashkurs
oliverklee
0
120
Team-Management-Plattform
oliverklee
0
88
Vertrauen in Teams & Führung
oliverklee
0
320
Software-Qualität von TYPO3-Extensions automatisieren
oliverklee
0
59
Vertrauen in Teams & Führung
oliverklee
0
180
Testing von TYPO3-Extensions
oliverklee
0
100
Software-Qualität von Extensions automatisieren
oliverklee
1
63
Content-Synchronisierung
oliverklee
0
190
Gewaltfreie Kommunikation: ein Crashkurs
oliverklee
0
390
Other Decks in Programming
See All in Programming
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
1k
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
0
320
AI がコードを書く時代における新卒エンジニアの仕事風景 (2026) / New Graduate Engineers in the Era of AI Coding (2026)
sushichan044
0
230
今さら聞けない .NET CLI
htkym
0
100
生成AI導入の「期待外れ」を乗り越える ー 開発フロー改革が目指す、真の組織変革
starfish719
0
2k
Foundation Models frameworkで画像分析
ryodeveloper
1
130
数百円から始めるRuby電子工作
tarosay
0
100
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
340
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
180
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
190
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.6k
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.7k
Featured
See All Featured
30 Presentation Tips
portentint
PRO
1
350
Designing for humans not robots
tammielis
254
26k
Un-Boring Meetings
codingconduct
0
350
How to Ace a Technical Interview
jacobian
281
24k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
410
Side Projects
sachag
455
43k
[SF Ruby Conf 2025] Rails X
palkan
2
1.2k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
620
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
The Spectacular Lies of Maps
axbom
PRO
1
870
Transcript
Testing für TYPO3-Extension Oliver Klee, 2022-06 @oliklee
[email protected]
Fahrplan 1. Einstieg 2. Überblick und Konzepte 3. ich baue
4. ihr baut :-) 5. Feedback & Schluss
Was braucht ihr? https://ddev.readthedocs.io / https://github.com/TYPO3-Documentation/tea/
Unit- Tests?
Manuelles Testen ist mühsam
Automatisierte Tests sind schnell
Tests für den TYPO3-Core
Unit-Tests 406 (144) Tests/s
Functional-Tests 8,13 (1,97) Tests/s
Acceptance-Tests 0,009 (0,003) Tests/s
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
Testsuite Testcase Test Assertion Test Test Testcase
Lebenszyklus eines Tests new FooTest(); setUp(); /** @test */ lifeIsGood();
tearDown();
Test-Level http:// fi lipdefar.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,
Akzeptanztests Selenium Codeception
Anti- Zombie- Tests-
Regressionstests
Smoketests
Smoketests
Story-Tests für Behavior-Driven Developmen t (BDD) Behat Codeception
Die Test-Pyramide Unit Functional/ Integration Acceptance System Photo by Eugene
Tkachenko on Unsplash: https://unsplash.com/photos/TF47p5PHW18
Picture by Diego González on Unsplash: https://unsplash.com/photos/-I8lDurtfAo Werbepause
4 Test-Phasen Setup (aufbauen) setUp() Code in der Testmethode Exercise
(ausführen) Methodenaufruf Verify (prüfen) assert…() Teardown (abbauen) tearDown()
None