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
0
150
Testing für TYPO3-Extensions
Oliver Klee
June 22, 2022
Tweet
Share
More Decks by Oliver Klee
See All by Oliver Klee
Team-Management-Plattform
oliverklee
0
36
Vertrauen in Teams & Führung
oliverklee
0
180
Software-Qualität von TYPO3-Extensions automatisieren
oliverklee
0
16
Vertrauen in Teams & Führung
oliverklee
0
120
Testing von TYPO3-Extensions
oliverklee
0
37
Software-Qualität von Extensions automatisieren
oliverklee
1
25
Content-Synchronisierung
oliverklee
0
120
Gewaltfreie Kommunikation: ein Crashkurs
oliverklee
0
250
Motivationspsychologie und Gamification in Non-Profit-Organisationen
oliverklee
0
150
Other Decks in Programming
See All in Programming
複雑なフォームの jotai 設計 / Designing jotai(state) for Complex Forms #layerx_frontend
izumin5210
6
1.6k
ASP.NETアプリケーションのモダナイゼーションについて
tomokusaba
0
270
Ruby で作る RISC-V CPU エミュレーター / RISC-V CPU emulator made with Ruby
hayaokimura
5
1.2k
今話題のMCPサーバーをFastAPIでサッと作ってみた
yuukis
0
140
ドメイン駆動設計とXPで支える子どもの未来 / Domain-Driven Design and XP Supporting Children's Future
nrslib
0
320
파급효과: From AI to Android Development
l2hyunwoo
0
170
「理解」を重視したAI活用開発
fast_doctor
0
320
Orleans + Sekiban + SignalR でリアルタイムWeb作ってみた
tomohisa
0
250
Live Coding: Migrating an Application to Signals
manfredsteyer
PRO
0
100
Golangci-lint v2爆誕: 君たちはどうすべきか
logica0419
1
280
AIコーディングの本質は“コード“ではなく“構造“だった / The essence of AI coding is not “code” but "structure
seike460
PRO
2
510
リアーキテクチャの現場で向き合う 既存サービスの読み解きと設計判断
ymiyamu
0
140
Featured
See All Featured
Faster Mobile Websites
deanohume
307
31k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
105
19k
Facilitating Awesome Meetings
lara
54
6.4k
BBQ
matthewcrist
88
9.6k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
We Have a Design System, Now What?
morganepeng
52
7.6k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Visualization
eitanlees
146
16k
Practical Orchestrator
shlominoach
187
11k
RailsConf 2023
tenderlove
30
1.1k
Producing Creativity
orderedlist
PRO
344
40k
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