Modellbasiertes Testen (MBT)
Podcast Episode: Modellbasiertes Testen (MBT) Modellbasierte Testansätze gibt es seit Jahren. Eine Weile war das Interesse groß. Dann kam...
Wer sich mit Softwaretests und Qualität beschäftigt, möchte einen praxisnahen Zugang zu den Grundlagen von Testmethoden. Den gibe es z.b. Beispiel im Buch "Software Testing kompakt", wo verschiedenste Themen von Testpyramide, Java-Testframworks, über Testautomatisierungsansätze bis zur Nachhaltigkeit von Tests betrachtet werden.
In dieser Episode spreche ich mit Pascal Moll über sein Buch "Software Testing Kompakt". Es geht um die Grundlagen von Testing und Testautomatisierung mit praktischen Beispielen aus der Java-Welt. Ob Testpyramide, JUnit oder Selenium. Viele Methoden und Tools sind abgebildet. Er geht in seinem Buch aber auch Themen wie z.b. Nachhaltigkeit an: Wie sehr beeinflussen unsere Tests eigentlich Ressourcen?
"Ich wurde relativ häufig gefragt bei Vorlesungen, Vorträgen oder anderen Gelegenheiten: Wie würde man denn anfangen, wenn man jetzt ins Testing einsteigen will?" - Pascal Moll
Pascal Moll ist freiberuflicher Berater. 2021 wurde er Zweiter beim 'Freelancer des Jahres'-Wettbewerb. Seine Schwerpunkte liegen im Bereich der Java-Entwicklung, des Testmanagements und der Testautomatisierung von Web- und Desktopapplikationen, insbesondere SAP. Er ist 'ISTQB Certified Tester, Full Advanced' sowie zertifizierter Softwarearchitekt. Sein Wissen teilt er regelmäßig in Podcasts, Webinaren, Artikeln und Blogposts. Seit 2024 ist er zudem Dozent an der Technische Hochschule Würzburg-Schweinfurt (THWS) für die Vorlesung Software Testing.
Immer mehr Unternehmen setzen auf digitale Lösungen, und Software muss zuverlässig funktionieren. Doch wie wird eigentlich sichergestellt, dass Programme fehlerfrei laufen? Genau darum dreht sich der Podcast "Softwaretesting kompakt" mit Gast Pascal Moll. In Frankfurt am German Testing Day 2025 spricht Host Richie mit dem erfahrenen Autor und Tester. Pascal hat das Buch "Software Testing Kompakt" geschrieben, das einen praxisnahen Einstieg in das Testen und die Testautomatisierung mit Java vermittelt. In dieser Blog-Ausgabe beleuchten wir die wichtigsten Punkte des Gesprächs.
Viele wissen beim Start nicht, welche Tests sie brauchen oder wie sie anfangen sollen. Pascal Moll erzählt, dass ihn oft gefragt wird, ob man als Tester programmieren können muss. Für Einsteiger gibt sein Buch einen Überblick: Was ist Testing eigentlich, wie unterscheiden sich Testarten und warum ist das Thema so vielfältig? Dass Testen nicht immer dasselbe bedeutet, merkt jeder schnell, der sich damit beschäftigt. Allein schon die bekanntesten Begriffe wie Unit Test, Integrationstest oder Akzeptanztest zeigen, wie tief das Feld geht.
Im Podcast wird auch klar: Es ist wichtig, nicht einfach loszutesten, sondern Grundwissen aufzubauen. Wer weiß, wie die verschiedenen Teststufen funktionieren, kann gezielter und besser testen.
Richie fragt Pascal, wie das Testing in typischen Java-Projekten aussieht. Pascal erklärt die berühmte Testpyramide: Unten stehen die Unit Tests, die am häufigsten und schnellsten laufen. Sie prüfen kleine Einheiten des Programms. Weiter oben folgen Integrationstests, die schon mehrere Teile zusammenspielen lassen. Ganz oben stehen System- und Akzeptanztests, die meist länger dauern. Für Oberflächentests kommt oft das Tool Selenium zum Einsatz.
Viele dieser Tools existieren für andere Sprachen wie Python, aber Pascal bleibt im Buch und Gespräch beim Java-Schwerpunkt. Hier ist JUnit das bekannteste Testframework. Wer mit APIs arbeitet, kann Wiremock zum Testen einsetzen. Maven hilft, Bibliotheken einzubinden und Tests in die Build-Pipeline zu steuern.
Die Java-Welt bietet viel Auswahl beim Test-Tooling. JUnit bleibt der Klassiker für Unit Tests. Steht das Thema API-Testing an, ist Wiremock praktisch. Oberflächentests erledigt Selenium. Maven verwaltet alles rund um Bibliotheken und den Build-Prozess. Das Buch von Pascal erklärt verständlich, wie diese Werkzeuge zusammenarbeiten und wie man sie für Projekte nutzt.
Ein spannender Punkt ist die Automatisierung von Tests. Entwickler können mit Maven steuern, wann welche Tests laufen. Das hilft, Fehler früh zu erkennen und spart Aufwand. Die Konzepte, wie man mit nativer Sprache (Given, When, Then) arbeitet, gehören zum Behaviour Driven Development, das auch komplexe Testfälle abbilden kann.
Pascal erklärt, wie man Testdaten clever managen kann. Feature-Files und Gherkin-Code sind ideal, um Daten in Szenarien zu organisieren. Bei großen Datenmengen empfiehlt er CSV-Dateien oder sogar echte Datenbanken zu nutzen. Die Organisation der Daten ist entscheidend, um Tests verständlich und wiederholbar zu machen.
Java bringt eigene Herausforderungen mit. Im Podcast sagt Pascal, Entwickler achten oft auf Wartbarkeit, aber übersehen manchmal die "Randfälle". Tester sollten prüfen, was bei ungültigen Werten oder Fehlern passiert. Exception Handling wird eigens behandelt, damit Programme auch im Notfall sinnvoll reagieren. Diese Perspektive hilft, aus Entwicklerdenken herauszutreten und so die Software robuster zu machen.
Ein Überraschungsthema im Buch ist Nachhaltigkeit. Denn Testing kostet nicht nur Arbeitszeit, sondern auch Strom. Nicht jeder Testfall ist sinnvoll. Wenn tausende Tests laufen, verbraucht das Ressourcen. Pascal und sein Co-Autor Daniel ermutigen dazu, vorab zu überlegen, welche Tests benötigt werden – vor allem, wenn die Tests auf großen Clustern laufen oder mehrere Browser parallel geöffnet werden. Nicht alles muss getestet werden. Qualität heißt auch, das Wichtige zu testen und dabei vernünftig mit Energie umzugehen.
Das Gespräch mit Pascal Moll zeigt: Softwaretesting ist kein Hexenwerk, aber auch kein Thema, das man "mal eben" nebenher macht. Mit guten Werkzeugen, klarem Verständnis und dem Blick für das Wesentliche lässt sich viel erreichen. Wer Lust hat, sein Wissen zu vertiefen, kann sogar ein Exemplar seines Buches gewinnen – Link in den Shownotes. Klar ist: Ein guter Einstieg ins Testen hilft jedem Entwickler und jeder Firma, die Qualität der Software zu sichern.
Podcast Episode: Modellbasiertes Testen (MBT) Modellbasierte Testansätze gibt es seit Jahren. Eine Weile war das Interesse groß. Dann kam...
Podcast Episode: Sociable Tests Bringt uns denn ein isolierter kleiner Unit-Test wirklich was? Es gibt vielfältige Möglichkeiten des automatisierten...
Podcast Episode: ChatGPT for Test Sprachmodelle gibt es schon lange. Doch das Release von ChatGPT schlug ein wie eine Bombe. Vielleicht liegt das an...