Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
Testing für TYPO3-Extensions
Oliver Klee
June 22, 2022
Programming
0
31
Testing für TYPO3-Extensions
Oliver Klee
June 22, 2022
Tweet
Share
More Decks by Oliver Klee
See All by Oliver Klee
Gamification für Arbeit in Communities
oliverklee
0
49
Software quality, cheese and games
oliverklee
0
120
Test-driven development with PHPUnit
oliverklee
0
110
Gamification for the TYPO3 Community
oliverklee
0
120
PHP Software quality tools
oliverklee
0
140
DEVSUMMIT2022
oliverklee
0
20
Gamification für Community-Sprints
oliverklee
0
95
Automating the code quality of your extensions
oliverklee
0
290
Dependency Hell, Composer and PHIVE
oliverklee
0
140
Other Decks in Programming
See All in Programming
Amazon QuickSightのアップデート -re:Invent 2022の復習&2022年ハイライト-
shogo452
0
230
Qiita Night PHP 2023
fuwasegu
0
11k
ECS Service Connectでマイクロサービスを繋いでみた
xblood
0
640
Prácticas de Seguridad en Kubernetes
pablokbs
0
130
AWSとCPUのムフフな関係
cmdemura
0
480
(新米)エンジニアリングマネージャーのしごと #RSGT2023
murabayashi
9
5.8k
低レイヤーから始める GUI
fadis
18
9.4k
LIFFで動く割り勘アプリTATEKAをリリースしてみた話
inoue2002
0
260
10年以上続くプロダクトの フロントエンド刷新プロジェクトのふりかえり
yotahada3
2
340
Milestoner
bkuhlmann
1
250
なぜRubyコミュニティにコミットするのか?
luccafort
0
320
TokyoR#103_DataProcessing
kilometer
0
540
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
500
130k
Git: the NoSQL Database
bkeepers
PRO
419
60k
Streamline your AJAX requests with AmplifyJS and jQuery
dougneiner
128
8.8k
Building Your Own Lightsaber
phodgson
96
4.9k
For a Future-Friendly Web
brad_frost
166
7.8k
Web development in the modern age
philhawksworth
197
9.6k
A Tale of Four Properties
chriscoyier
149
21k
10 Git Anti Patterns You Should be Aware of
lemiorhan
643
54k
Building Flexible Design Systems
yeseniaperezcruz
314
35k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
24
4.6k
Gamification - CAS2011
davidbonilla
75
4.1k
Build your cross-platform service in a week with App Engine
jlugia
221
17k
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