Automating the
code quality
of your extensions
Oliver Klee | @oliklee
[email protected]
2021-08-26 | TYPO3 Online Days 2021
Slide 2
Slide 2 text
Hello!
Oliver Kle
e
#extension-dev
#workshop-teacher
#the-unit-testing-guy
@oliklee
oliverklee.de
Slide 3
Slide 3 text
The TYPO3
Quality Assurance Initiative
Mission: Build learning examples for high-quality extensions.
Daniel Siepmann
Łukasz Uznański
Oliver Klee
Join us on Slack:
#qa-best-practices
Slide 4
Slide 4 text
Today: Guided tour through
automating extension quality
Slide 5
Slide 5 text
Today: Guided tour through
automating extension quality
But, why?
Slide 6
Slide 6 text
Today: Guided tour through
automating extension quality
tools and
version
support
the demo
extension
breaking
things
automated
testing
(and
fi
xing
them again)
Slide 7
Slide 7 text
Today: Guided tour through
automating extension quality
tools and
version
support
the demo
extension
breaking
things
automated
testing
(and
fi
xing
them again)
Slide 8
Slide 8 text
Version support for extensions
TYPO3 9LTS
(old LTS)
TYPO3 10LTS
(latest LTS)
PHP 7.2, 7.3, 7.4 PHP 7.2, 7.3, 7.4
Slide 9
Slide 9 text
Branching strategies
for version support
TYPO3 9LTS and 10LTS
nimut
testing framework
V5: TYPO3 8LTS-10LTS
1-branch strategy
Slide 10
Slide 10 text
Branching strategies
for version support
TYPO3 9LTS and 10LTS
nimut
testing framework
V5: TYPO3 8LTS-10LTS
1-branch strategy
TYPO3 9LTS
TYPO3
testing FW
V4: TYPO3 9LTS
2-branch strategy
TYPO3 10LTS
TYPO3
testing FW
V5: 10LTS
Slide 11
Slide 11 text
Branching strategies
for version support
TYPO3 9LTS and 10LTS
nimut
testing framework
V5: TYPO3 8LTS-10LTS
1-branch strategy
TYPO3 9LTS
TYPO3
testing FW
V4: TYPO3 9LTS
2-branch strategy
TYPO3 10LTS
TYPO3
testing FW
V5: 10LTS
Slide 12
Slide 12 text
Branching strategies
for version support
TYPO3 9LTS and 10LTS
nimut
testing framework
V5: TYPO3 8LTS-10LTS
1-branch strategy
TYPO3 9LTS
TYPO3
testing FW
V4: TYPO3 9LTS
2-branch strategy
TYPO3 10LTS
TYPO3
testing FW
V5: 10LTS
TYPO3 testing framework
V6: 11LTS-12LTS
Slide 13
Slide 13 text
Installing the
development tools
for everything
(wherever possible)
for higher
PHP version requirements
Composer PHIVE
in case of
dependency hell
Slide 14
Slide 14 text
Today: Guided tour through
automating extension quality
tools and
version
support
the demo
extension
breaking
things
automated
testing
(and
fi
xing
them again)
Slide 15
Slide 15 text
The tea example extension
Slide 16
Slide 16 text
The tea example extension
Slide 17
Slide 17 text
The tea example extension
Slide 18
Slide 18 text
Today: Guided tour through
automating extension quality
tools and
version
support
the demo
extension
breaking
things
automated
testing
(and
fi
xing
them again)
Slide 19
Slide 19 text
Today: Guided tour through
automating extension quality
tools and
version
support
the demo
extension
breaking
things
automated
testing
(and
fi
xing
them again)