Ich entwickle regelmäßig Lösungen, um Webanwendungen stabil und wiederholbar zu testen. In diesem Beitrag stelle ich mein Projekt zur automatisierten Jobsuche auf Stepstone.de vor – umgesetzt mit WebdriverIO, JavaScript und einer modularen Struktur für maximale Wartbarkeit.

Ziel des Projekts

Das Ziel war es, die einige wichtige Funktionen der Stepstone-Website automatisiert zu testen – darunter:

  • Die Jobsuche nach dem Keyword „Testautomatisierung“
  • Filterfunktionen wie „Teilweise Home-Office“ und „Neuer als 24h“
  • Standortfilter (z. B. für die Stadt „Berlin“)
  • Öffnen von Detailseiten
  • Extraktion von Informationen über ausgeschriebene Stellen

Technologie-Stack

  • WebdriverIO v9.x
  • Node.js
  • Mocha als Test-Framework
  • Chai für Assertions

Auszug aus der Projektstruktur

/test
└── specs
├── stepstoneJobSearch.js
├── stepstone24hFilter.js
├── stepstoneFilterBerlin.js
└── stepstoneOpenJobDetailPage.js
/helpers
└── stepstone.helper.js

Die Tests sind in thematisch getrennten Dateien organisiert. Gemeinsame Abläufe wie das Akzeptieren von Cookies oder die Keyword-Suche habe ich in der `stepstone.helper.js` gekapselt.

Was habe ich unter anderem getestet?

  • Keyword-Suche:

Zunächst wird geprüft, ob das Suchfeld korrekt geladen wurde, um dann automatisiert das Keyword „Testautomatisierung“ einzugeben und die Jobsuche auszulösen.

  • Filter „Teilweise Home-Office“ und „Neuer als 24h“:

Die Filter werden angeklickt und anschließend überprüft, ob sie korrekt angewendet wurden.

  • Jobdetails:

Der erste Job-Eintrag wird geöffnet, ein neuer Tab wird angesteuert und die Detailseite überprüft.

  • Standortsuche „Berlin“:

Ein Ziel meines Projekts war es außerdem, herauszufinden, wie viele Testautomatisierungsjobs aktuell in Berlin angeboten werden.

Dazu habe ich in meinem automatisierten Testprojekt gezielt nach dem Stichwort „Testautomatisierung“ gesucht und anschließend den Standortfilter auf „Berlin“ gesetzt.

Die so gefilterten Jobdaten – bestehend aus Titel, Firmenname und Standort – werden am Ende automatisiert ausgelesen und in einer Datei auf dem Desktop gespeichert.

Der Testfall stepstoneFilterBerlin.js im Detail

  1. Stepstone öffnen und Cookies akzeptieren

  2. Nach dem Keyword „Testautomatisierung“ suchen

  3. Suchvorgang auslösen

  4. Filter „Berlin“ anwenden

  5. Anzahl der Jobanzeigen ermitteln

  6. Jobtitel, Unternehmen und Standorte extrahieren und in Datei schreiben

  7. Voilà: Abschließend erhalte ich das Ergebnis und meine jobtitel_und_infos.txt auf dem Desktop – mit allen relevanten Stellenanzeigen für Testautomatisierung in Berlin.

 

So wird getestet

In der wdio.conf.js wurde maxInstances auf 1 gesetzt, um alle Tests sequentiell laufen zu lassen.

Beispielausgabe

✓ sollte das Suchfeld finden und 'Testautomatisierung' eingeben
✓ sollte den Suchbutton klicken 
✓ sollte neue Seite laden und die H1 mit der Trefferzahl anzeigen 

Optional könnte ich natürlich den HTML-Reporter einbinden, um die Testergebnisse übersichtlich im Browser darzustellen. Dieses Mal verzichte ich jedoch darauf.

Warum dieses Projekt?

Wie bereits erwähnt, hat mich interessiert, wie viele Jobs für den Bereich Testautomatisierung angeboten werden. Dabei wollte ich nicht nur manuell suchen, sondern die Gelegenheit nutzen, um ein automatisiertes Testprojekt mit WebdriverIO aufzusetzen.

So konnte ich gleich zwei Ziele erreichen: einen realistischen Use-Case für moderne Testautomatisierung umzusetzen – und gleichzeitig die lokale Nachfrage in der Hauptstadt nach meinem Berufsfeld analysieren.

Abschließend, die Ergebnisse der Testausführung:

Weiterführende Links

Beitrag verfasst von:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Bitte füllen Sie dieses Feld aus.
Bitte füllen Sie dieses Feld aus.
Bitte gib eine gültige E-Mail-Adresse ein.
Sie müssen den Bedingungen zustimmen, um fortzufahren.