Test & BetriebTest & Betrieb

Pokale oder Pyramiden – brauchen wir noch Unit-Tests?

Integrations Tests
Testpyramide
Unit Tests

Abstract


Do. 16:40 - 17:25 Uhr | 2023

Häufig hört man, dass zu viele Unit-Tests Refactorings des Produktivcodes erschweren und den Code dadurch schlechter wartbar machen. Als Konsequenz daraus gibt es verschiedene Vorschläge, den Fokus beim Testen mehr auf Integrationstests zu legen. Das kann allerdings zu deutlich erhöhten Testlaufzeiten führen, wodurch man kein schnelles Feedback bekommt und die Tests seltener ausgeführt werden. Bei fehlschlagenden Integrationstests ist es darüberhinaus schwieriger, die Ursache für den Fehler zu finden. Außerdem wird bei den Vorschlägen häufig übersehen, dass für wartbare Unit-Tests auch der Produktivcode clean und strukturiert sein muss. In diesem Vortrag versuchen wir eine Begriffsklärung der verschiedenen Testarten und beleuchten die Hintergründe des Vorurteils, dass Unit-Tests Refactorings erschweren. Dabei gehen wir auf verschiedene Faktoren ein, die die Wartbarkeit von Tests verschlechtern oder auch verbessern. Mit diesen Erkennntnissen schauen wir erneut auf die Frage, ob Unit-Tests wirklich Refactorings erschweren – oder ob sie diese im Gegenteil überhaupt erst ermöglichen.

Präsentation
Non-Sponsored TalkAnfängerDeutsch

Vortragsimpressionen

Jacques Jung

Jacques Jung

www.andrena.de

Jacques Marco Jung ist seit 2020 Agile Software Engineer bei der andrena objects ag in Karlsruhe, wo er sich mit der Entwicklung von Backend, Frontend und Cloud-Services beschäftigt. Dabei setzt er unter anderem Technologien wie React, Spring Boot, .NET und Kubernetes ein. Wichtig sind für ihn auch die Themen Scrum und Agilität, mit denen er sich als Ko-Produzent des Podcasts „andrena entwickelt“ ständig auseinandersetzt. Des Weiteren ist es ihm wichtig, unter Anwendung agiler Entwicklungsmethoden, wie Test-driven Development (TDD), Behavior-driven Development (BDD) und Domain-driven Design (DDD), hochqualitative Software zu schreiben, die anderen Menschen einen hohen Mehrwert bietet. Neben der beruflichen Weiterentwicklung interessiert sich Jacques für das Restaurieren alter Retro-Computer und findet einen Ausgleich im Mountainbike- und Gravelbikefahren.

Lars Alvincz

Lars Alvincz

www.andrena.de

Lars Alvincz hat im Bereich Compilerbau und Maschinelles Lernen promoviert. Seit 2010 ist er bei der andrena objects ag als agiler Softwareentwickler, Architekt und Coach tätig. Technologisch liegt sein Schwerpunkt auf Backend- und Cloud-Entwicklung mit Spring-Boot/Java/Kotlin. Daneben sind seine Kernthemen automatisiertes Testen und Domain Driven Design. Neben seiner Projekttätigkeit unterstützt er regelmäßig verschiedene Kunden mit DDD-Workshops dabei, ein gemeinsames Verständnis für die Fachlichkeit zu entwickeln sowie Bounded Contexts zu identifizieren, die dann als Grundlage für die Zerlegung in Microservices dienen können. Ausgleich zur Entwicklungstätigkeit findet Lars unter anderem beim Fotografieren, Radfahren oder Homerecording.