c’t webdev Testing Day

Heute nehme ich an dem Testing Day im Rahmen der c’t <webdev>-Konferenz statt. Es ist meine erste Konferenz und ich bin gespannt, welche Erkenntnisse ich aus den Vorträgen ziehen kann. Ich werde diesen Beitrag im Laufe des Tages stetig aktualisieren, um mit frischen Erinnerungen ein Fazit des heutigen Tages zu ziehen.

Das Programm

10.00 Uhr: Begrüßung durch den Veranstalter Jo Bager und heise Backend-Dev Stephen Fischer

Jo und Stephen heißen die Teilnehmer willkommen und tauschen sich ein wenig über das Thema Testen aus. Ein persönlicher Auftakt, der der heutigen Veranstaltung einen familiären Charakter verleiht.

10.15 Uhr: Testexperten als Influencer von Thomas Garus

Thomas Garus berichtet über erfolgreiche Experimente und Strategien, das Testen vom Ende des Entwicklungsprozesses nach vorne zur Planung und Entwicklung selbst zu bewegen. Für mich als agilen Tester keine bahnbrechenden Erkenntnisse.

Trotzdem nehme ich Ideen mit wie Mob- und Pair-Testing oder das Experiment, die Tester- und Entwickler-Rolle für einen Sprint zu tauschen.

11.15 Uhr: Besser spät als nie! Testsuite in bestehender Frontend App nachrüsten von Mirjam Aulbach

Thematisch der Beitrag, auf den ich mich am meisten freue. Mirjam beginnt mit einer positiv-aufgeweckten Stimmung und weckt meine Aufmerksamkeit, indem sie ihren Vortrag mit unzähligen Memes und Gifs ausschmückt.

Inhaltlich habe ich auf einen größeren AHA-Effekt gehofft – vielleicht kann es den aber gar nicht geben. Sie erzählt, wie ein Entwicklerteam in ein bestehendes Projekt Tests implementieren kann und dabei den Spagat zwischen Wirtschaftlichkeit und ausreichender Testabdeckung schafft. Möglicherweise ist genau das der AHA-Effekt: es braucht Kontinuität und eine langfristige Strategie, an die sich alle Teammitglieder halten.

Außerdem beschreibt Mirjam den TDD-Ansatz aus der Praxis heraus und erinnert daran, inwiefern es sich lohnt, vorneweg mehr Zeit mit den Tests zu verbringen, um im Nachhinein ein qualitativeres Produkt sowie qualitativeren Code zu erzeugen.

12.15 Uhr: End-to-end testing wie es sein sollte von Ramona Schwering

Ramona Schwering wirbt in ihrem Vortrag für End-to-End Testing und möchte die Angst davor nehmen. Dazu stellt sie das Testing Framework Cypress vor. Da ich Cypress bereits in einem Projekt implementiert habe, kann ich aus dem Vortrag nichts neues mitnehmen. Für jeden, dem Cypress bisher nichts sagt, war der Vortrag aber sicher eine gute Demonstration, wie schnell sich Cypress aufsetzen lässt.

14.00 Uhr: Designsystem mit Storybook von Sven Wolfermann

In dem Vortrag erhalte ich einen Überblick über verschiedene Design-Systeme und wie diese, insbesondere Storybook, auch im Testing ihren Platz finden. Für mich ein erster Einblick in Design-Systeme, mit denen ich bisher nur sporadisch in Kontakt gekommen bin.

15.00 Uhr: Unit-Testing und TDD in JavaScript von Marco Emrich

Marco Emrich differenziert Test Driven Development als Entwicklungsansatz und automatisierte Tests, die business specs abbilden. Dabei geht er auf die Vorteile von TDD ein, wie der Einstieg gelingt und welche Testaspekte damit nicht abgedeckt werden. In diesem Zusammenhang stellt er Behaviour Driven Development vor, das es erleichtert, Tests in Form einer Spezifikation zu formulieren und somit gegen diese Spezifikation zu entwickeln.

Anschließend gibt es noch ein paar Statistiken zur Beliebtheit verschiedener JavaScript-Testing-Frameworks. Fazit: Aktuell am beliebtesten für Unit Tests sind Mocha und Jest, während Jasmine an Bedeutung verliert.

Zum Schluss zeigt Marco Emrich noch in einer Live-Coding Session, wie er Test Driven Development praktisch ausführt. Da ich als Tester selbst nicht entwickle, erscheint dieser Teil des Vortrags weniger relevant. Dennoch ist es interessant zu sehen, wie TDD in der Praxis aussehen sollte.

16.00 Uhr: Flaky tests – Albträume bekämpfen von Ramona Schwering

Auch in ihrem zweiten Vortrag spricht Ramona Schwering über automatisierte Tests – und zwar über unzuverlässige. Sie zählt die drei typischen Ursachen auf: instabile Tests, instabile Umgebungen und instabile Software. In diesem Zuge berichtet sie über NoGo’s in der Testautomatisierung und wie man gegen unzuverlässige Tests vorgeht.

Für mich springen aus dem Beitrag folgende Anregungen heraus:

  • Können wir unsere Testfallketten kürzen, um End-2-End-Tests in kleineren Einheiten zu gestalten?
  • Nutzen wir in Folgetests zu oft Testdaten, die aus zuvor ausgeführten Tests stammen? Können wir diese Testdaten explizit pro Testfall generieren?
  • Wir sollten den Retry-Button der Tests bedachter verwenden

Fazit des heutigen Tages

Ich habe mir mehr AHA-Momente erhofft und dachte, die Vorträge gingen hier und da etwas tiefer. Für den ersten Eindruck in die jeweiligen Themen waren die Vorträge aber allesamt empfehlenswert.

Mein persönliches Highlight war der Vortrag von Mirjam Aulbach. Mirjam hat eine sehr motivierende Art und ihre Begeisterung für Testing ist einfach ansteckend.

Fachlich nehme ich vermutlich nur wenig aus dem Tag mit. Dafür habe ich ordentlich Motivation getankt. Zudem ist es beruhigend zu wissen, dass andere da draußen mit den gleichen Problemen kämpfen – und selbst der Kampf gegen flaky Tests noch nicht verloren ist. 🙂


Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.