Software

Selenium, Cypress oder Playwright: Moderne Tools für Testautomatisierung im Vergleich

Talha AslanTalha Aslan 17 Min. Lesezeit 1 Aufrufe

Bevor eine Website live geht, stelle ich immer dieselbe Frage: Klicken wir dieses Formular, diesen Checkout und diesen Login nach jedem Release von Hand durch? Lautet die Antwort nein, brauchen Sie Tools für Testautomatisierung. In diesem Beitrag vergleiche ich Selenium, Cypress und Playwright direkt miteinander. Ich zeige denselben Test in allen drei Werkzeugen und erkläre aus meiner Praxis, welches Team zu welchem Tool passt.

Was sind Tools für Testautomatisierung und worin unterscheiden sich Selenium, Cypress und Playwright?

Tools für Testautomatisierung sind Programme, die einen Browser per Code steuern und Klicks, Eingaben und Navigation echter Nutzer wiederholen. Der Kernunterschied liegt in der Architektur: Selenium steuert den Browser von außen über das W3C WebDriver Protokoll, Cypress läuft im Browser selbst, und Playwright spricht direkt über ein eigenes Protokoll mit dem Browser.

Auf dem Papier wirkt das wie ein Detail. In der Praxis bestimmt es allerdings Tempo, Stabilität, Sprachunterstützung und das Verhalten bei mehreren Tabs. Zum Beispiel unterstützt Cypress nur JavaScript, weil die Tests im Browser laufen. Deshalb sollten Sie zuerst die Architektur verstehen und erst dann die Funktionsliste lesen.

Die Rolle selbst, also den Arbeitsalltag eines Testautomatisierers und die Phasen des STLC, behandle ich in einem eigenen Beitrag. Hier geht es ausschließlich um die Werkzeuge. Interessiert Sie die Karriereseite, lesen Sie zuerst dort und kommen Sie dann zu diesem Vergleich zurück.

Warum vergleichen wir immer noch drei Tools, statt einen Sieger zu küren?

Einen klaren Sieger gibt es nicht, denn jedes Tool entstand für ein anderes Problem. Selenium machte Browserautomatisierung Mitte der 2000er Jahre überhaupt erst möglich. Heute steht das Projekt hinter dem WebDriver Protokoll, das das W3C standardisiert hat. Cypress kam mit einer einfachen Idee: Frontend Entwickler sollen einen Test schreiben und ihn sofort laufen sehen. Playwright stammt von Microsoft und hat das Ziel, alle modernen Browser Engines über eine einzige API zu steuern.

In der Praxis sehe ich folgendes Bild. Zunächst bleibt Selenium in großen, mehrsprachigen Teams stark. Frontend Teams mit viel JavaScript lieben dagegen Cypress. Neue Projekte wählen dann zunehmend Playwright als Standard. Das ist Praxiserfahrung, keine Garantie. Also beziehen Sie Sprache, Infrastruktur und Budget Ihres Teams ein, bevor Sie entscheiden.

Zudem ersetzen sich diese Tools nicht vollständig. Manche Teams nutzen Cypress für Komponententests und Playwright für komplette Nutzerflüsse. Entscheidend ist, dass Sie wissen, warum jeder Test existiert, und nur so viele Tools behalten, wie Sie pflegen können.

Wie funktioniert Selenium und wann ist es noch die klügste Wahl?

Selenium WebDriver setzt eine Treiberschicht zwischen Testcode und Browser. Ihr Code schickt einen Befehl an den Treiber, und der Treiber reicht ihn an den Browser weiter. Das Design folgt der W3C WebDriver Spezifikation. Somit steuern Sie Chrome, Firefox, Edge und Safari mit derselben Logik. Der Selenium Manager, seit Version 4.6 an Bord, nimmt Ihnen zudem das lästige Herunterladen der Treiber weitgehend ab.

Die größte Stärke von Selenium ist die Sprachvielfalt. Konkret gibt es offizielle Bindings für Java, Python, C#, Ruby und JavaScript. Arbeitet Ihr Backend Team also mit Java, schreiben Sie Tests in derselben Sprache und mit derselben Toolchain. Selenium Grid verteilt Ihre Tests dann auf viele Maschinen und Browser.

  • Sinnvoll bei: Enterprise Teams mit Java oder C#, einer großen bestehenden Testsuite oder Bedarf an echtem Safari und älteren Browsern.
  • Vorsicht bei: der Wartestrategie. Ohne explizite Waits häufen sich instabile Tests.
  • Oft übersehen: Selenium ist kein Testrunner. Sie kombinieren es mit JUnit, TestNG oder pytest.

Warum ist die Architektur von Cypress so wichtig?

Cypress führt Tests im Browser aus, in derselben Schleife wie Ihre Anwendung. Dadurch sind Sie sehr nah am DOM, am Netzwerk und am Zustand der App. Während ein Test läuft, also live, verfolgen Sie jeden Schritt und springen zu früheren Schritten zurück, um den Bildschirm von damals zu prüfen. Für die Entwicklererfahrung ist das der beliebteste Teil.

Andererseits bringt dieselbe Architektur feste Grenzen mit. Die Seite zu den Kompromissen von Cypress nennt sie offen. Erstens muss der Testcode JavaScript oder TypeScript sein. Zweitens steuern Sie nie mehr als einen Browser gleichzeitig. Außerdem hängt jeder Test an einer einzigen Superdomain, und für einen anderen Origin brauchen Sie cy.origin().

Kurz gesagt ist Cypress ein sehr angenehmes Umfeld für Frontend Teams, die Single Page Apps bauen und ihre Tests selbst schreiben. Sind jedoch Weiterleitungen zum Zahlungsanbieter, mehrere Tabs oder zwei gleichzeitig handelnde Nutzer für Sie kritisch, planen Sie diese Grenzen von Anfang an ein.

Was macht Playwright anders und warum hat es sich so schnell verbreitet?

Playwright steuert Chromium, Firefox und WebKit über eine einzige API. Laut offizieller Dokumentation läuft es unter Windows, Linux und macOS, lokal oder in der CI, headless oder sichtbar, mit eingebauter mobiler Emulation. Dank WebKit nähern Sie sich dem Verhalten von Safari auch ohne Mac an.

Verbreitet hat sich Playwright aber vor allem durch den Komfort im Alltag. Das automatische Warten prüft zunächst vor einem Klick, ob ein Element sichtbar und aktiv ist. Mit dem Trace Viewer spielen Sie jeden Schritt eines fehlgeschlagenen Tests nach, samt Netzwerkverkehr und Screenshots. Schließlich übersetzt Codegen Ihre Klicks im Browser direkt in Testcode.

  • Offizielle Sprachen: JavaScript/TypeScript, Python, Java und .NET.
  • Eingebaute parallele Ausführung und HTML Report.
  • Mehrere Tabs, Fenster und Browserkontexte in einem Test.
  • UI Mode mit Watch Modus und Zeitreise beim Debugging.

Allerdings ist das Ökosystem von Playwright jünger als das von Selenium. Suchen Sie daher eine sehr spezielle Enterprise Integration, finden Sie ein fertiges Plugin eventuell eher auf der Selenium Seite.

Wie schneiden die Tools für Testautomatisierung im Tabellenvergleich ab?

Die folgende Tabelle stützt sich auf die offizielle Dokumentation der drei Tools. Versionsdetails ändern sich mit der Zeit, deshalb prüfen Sie die jeweilige Seite vor Ihrer Entscheidung noch einmal.

KriteriumSeleniumCypressPlaywright
ArchitekturW3C WebDriver, Steuerung von außenLäuft im BrowserDirekte Protokollverbindung zum Browser
TestspracheJava, Python, C#, Ruby, JavaScriptNur JavaScript/TypeScriptJS/TS, Python, Java, .NET
BrowserChrome, Firefox, Edge, SafariChrome Familie, Firefox, WebKit (experimentell)Chromium, Firefox, WebKit
Automatisches WartenNein, explizite Waits nötigJa, Befehle wiederholen sichJa, Prüfung vor jeder Aktion
Mehrere Tabs oder BrowserMöglichEin Browser; Tabs per PluginMöglich
DebuggingAbhängig von Runner und IDEVisueller Runner mit ZeitreiseTrace Viewer, UI Mode
Parallele LäufeÜber Selenium GridEinfacher mit dem kostenpflichtigen Cloud DienstEingebaut
Passt am besten zuMehrsprachigem Enterprise TeamFrontend Team mit viel JavaScriptNeuem Projekt, gemischtem Team

Hängen Sie sich beim Lesen dieses Vergleichs der Tools für Testautomatisierung nicht an einer einzigen Zeile auf. Spielen parallele Läufe für Sie zum Beispiel keine Rolle, sollte der Unterschied bei Cypress Ihre Entscheidung nicht kippen.

Wie sieht derselbe Login Test in allen drei Tools aus?

Den Unterschied sehen Sie am besten an einem einzigen Szenario. Unseres ist also schlicht. Sie öffnen die Login Seite, tippen E-Mail und Passwort ein, klicken den Button und prüfen, ob die Überschrift des Dashboards erscheint. Die Beispiele zeigen das Prinzip; passen Sie die Selektoren an Ihr Projekt an.

Selenium (Python): Sie öffnen die Seite mit driver.get(URL). Danach warten Sie mit WebDriverWait(driver, 10).until(EC.visibility_of_element_located((By.ID, "email"))) auf das Feld. Dann tippt send_keys die Werte ein, und click drückt den Button. Zum Schluss prüft ein assert den Text der Überschrift.

Cypress (JavaScript): Sie starten mit cy.visit('/login'). Danach folgen cy.get('#email').type(email), cy.get('#password').type(password) und cy.contains('Anmelden').click(). Für die Prüfung genügt cy.contains('h1', 'Dashboard').should('be.visible'). Waits schreiben Sie hier gar nicht.

Playwright (TypeScript): Sie öffnen die Seite mit await page.goto('/login'). Anschließend rufen Sie await page.getByLabel('E-Mail').fill(email) und await page.getByRole('button', { name: 'Anmelden' }).click() auf. Zur Kontrolle dient await expect(page.getByRole('heading', { name: 'Dashboard' })).toBeVisible().

Bei Selenium steuern Sie das Warten also selbst, die beiden anderen Tools übernehmen es für Sie. Zudem binden die Rollen und Label Locators von Playwright den Test an den Accessibility Tree. Folglich brechen Tests seltener, wenn sich das Design ändert.

Welches Tool erzeugt weniger instabile Tests?

Ein instabiler, also flaky Test besteht mal und scheitert mal, obwohl sich am Code nichts geändert hat. Den Großteil dieser Instabilität allerdings sehe ich in Annahmen über Timing, nicht im Tool. Tests mit festen Wartezeiten, ignorierten Animationen oder geteilten Testdaten machen in jedem Tool Ärger.

Trotzdem ist der Unterschied zwischen den Tools real. Das automatische Warten in Cypress und Playwright erspart viele Waits, die Sie in Selenium von Hand schreiben. Daher begegnet mir Instabilität in Selenium Teams häufiger, meist aber als Problem, das sich mit Disziplin lösen lässt. Das ist Praxiserfahrung, keine Garantie.

  1. Nutzen Sie bedingte Waits statt fester Pausen.
  2. Lassen Sie jeden Test seine eigenen Daten anlegen und wieder aufräumen.
  3. Wählen Sie stabile Locators wie Rollen, Labels oder Test IDs statt CSS Klassen.
  4. Simulieren Sie externe Dienste, vor allem Zahlung und E-Mail, wo es geht.
  5. Stellen Sie instabile Tests unter Quarantäne, statt sie stumm zu schalten, und suchen Sie dann die Ursache.

In meinen eigenen Projekten führe ich instabile Tests auf einer separaten Liste. Scheitert ein Test zweimal hintereinander ohne klaren Grund, landet er dort, und in derselben Woche sucht jemand die Ursache. Diese kleine Gewohnheit schützt das Vertrauen. Eine Suite, die alle ständig neu starten, verkommt sonst schnell zu Rauschen.

Welches Tool punktet bei Tempo und CI/CD Integration?

Eine harte Zahl zum Tempo nenne ich bewusst nicht. Das Ergebnis hängt stark von Ihrer App, der Zahl der Tests und Ihren Maschinen ab. Ebenso rate ich zur Vorsicht bei Aussagen wie "Tool X ist 40 Prozent schneller", wenn keine Quelle dabei steht. Ehrlicher ist ein einfacher Weg: Schreiben Sie dieselben fünf Tests in jedem Tool und messen Sie sie in Ihrer eigenen CI.

Zunächst laufen alle drei mit GitHub Actions, GitLab CI und Jenkins. Allerdings unterscheiden sich die Ansätze. Der Setup Assistent von Playwright bietet direkt eine fertige GitHub Actions Datei an, und parallele Läufe sind eingebaut. Bei Cypress greifen viele Teams für Parallelisierung und Aufzeichnungen zum kostenpflichtigen Cloud Dienst. Bei Selenium bauen Sie die Skalierung selbst auf, über Grid oder einen Cloud Anbieter.

Achten Sie beim Messen zudem nicht nur auf die Gesamtlaufzeit. Prüfen Sie den ersten Lauf, den zweiten Lauf mit Cache und die Minuten, die Sie brauchen, um die Ursache eines Fehlers zu finden. Meiner Meinung nach zählt Letzteres am meisten, denn dort verbringt ein Team die meiste echte Zeit.

Welche Browser müssen Sie wirklich testen?

Beantworten Sie diese Frage zunächst, bevor Sie ein Tool wählen. Schauen Sie in Ihre Analysedaten, mit welchen Browsern und Geräten Ihre Nutzer kommen. Nutzt ein großer Teil Ihrer Besucher ein iPhone, ist das Verhalten von Safari für Sie kritisch. Dann punktet Selenium beim echten Safari, und Playwright hilft mit WebKit bei einer guten Annäherung.

Außerdem ist ein mobiler Viewport nicht dasselbe wie ein echtes Mobilgerät. Die mobile Emulation von Playwright ahmt Bildschirmgröße, Touch Ereignisse und User Agent nach. Die Leistung eines echten Geräts allerdings und jede Eigenheit des Browsers bildet sie aber nicht ab. Für die mobilen Grundlagen empfehle ich meinen Beitrag zum Test der Mobilfreundlichkeit.

Nutzen zum Beispiel auf einer B2B Firmenwebsite fast alle Besucher Chrome und Edge am Desktop, verschwendet eine breite Browsermatrix schlicht CI Minuten. Entscheiden Sie deshalb anhand Ihrer eigenen Daten, nicht aus dem Bauch. Kritische Abläufe laufen dann in der breiten Matrix, der Rest in einem einzigen Browser.

Können Tools für Testautomatisierung Performance und SEO Tests ersetzen?

Nein, das können sie nicht. Diese Tools prüfen also funktionale Korrektheit. Funktioniert der Button? Geht das Formular raus? Und erscheint die Fehlermeldung? Ladezeit, Core Web Vitals und SEO Signale gehören dagegen in andere Werkzeuge. Selbst Cypress schreibt in seiner Dokumentation, dass es kein allgemeines Automatisierungs oder Performance Testtool sein will.

Kombinieren lassen sich beide Welten trotzdem. Sie melden sich zum Beispiel mit Playwright an und starten danach Lighthouse auf einer geschützten Seite. Wie ich Lighthouse lese, erkläre ich im Beitrag zum Lighthouse Performance Test. Für die Rankingseite lesen Sie, wie die Ladezeit SEO beeinflusst.

Meine Regel in der Praxis ist einfach. Ein roter Funktionstest stoppt das Release. Ein sinkender Performance Score erzeugt eine Warnung, blockiert das Release aber nicht automatisch. So gerät das Team nicht bei jeder kleinen Schwankung in Panik.

Wo haben diese Tools ihren Platz im Testprozess vor dem Launch?

Meine Prüfungen vor einem Launch bilden eine lange Liste: Inhalte, Weiterleitungen, Formularbenachrichtigungen, Tracking Codes, Ladezeit und mobile Darstellung. Diese ganze Liste zu automatisieren, ist weder nötig noch effizient. Konkret reserviere ich Automatisierung für Abläufe, die sich bei jedem Release wiederholen und Geld kosten, wenn sie brechen.

  • Absenden des Kontakt und Angebotsformulars samt Dankeseite.
  • Warenkorb, Wechsel in den Checkout und Bestellübersicht.
  • Login, Passwort zurücksetzen und Logout.
  • Sprachwechsel und Weiterleitung auf die richtige Sprachseite.
  • Status 200 auf kritischen Seiten und korrekte Weiterleitungen alter URLs.

Für eine schnelle erste Prüfung der Weiterleitungen nutzen Sie den Redirect Checker. Bei großen Umbauten wie einer Migration sollten Ihre automatisierten Tests parallel zur SEO Checkliste für die Website Migration laufen.

Wie bauen Sie das Page Object Modell in jedem Tool auf?

Das Page Object Modell bündelt Selektoren und Aktionen jedes Bildschirms in einer Klasse. Ändert sich der Selektor des Login Buttons, passen Sie eine Datei an statt hundert Tests. Das Muster hängt nicht vom Tool ab, doch jedes Tool trägt es mit unterschiedlichem Komfort.

Zunächst sind Page Objects in Selenium fast Pflicht. Ohne einen zentralen Ort für explizite Waits und Selektoren zerfasert der Testcode schnell. In Java Teams ist das längst Tradition. In Playwright bauen Sie die Klassen genauso. Zudem erleichtert das Fixture System, eine bereits angemeldete Seite direkt in Tests zu übergeben.

Cypress setzt in seiner Dokumentation dagegen eher auf Custom Commands und App Actions. Zum Beispiel empfiehlt es, sich per cy.request im Hintergrund anzumelden und direkt ins Dashboard zu springen. Das beschleunigt Tests spürbar. Den echten Login über die Oberfläche sollten Sie dann aber in einem eigenen Test absichern.

Meine Gewohnheit ist in jedem Tool dieselbe. Halten Sie Selektoren an einem Ort und schreiben Sie den Test selbst in der Sprache des Geschäfts. Liest ihn jemand, sollte dort sinngemäß stehen: "Der Nutzer sendet das Angebotsformular ab."

Wie unterscheiden sich Komponententests und API Tests?

Tests über den kompletten Nutzerfluss sind wertvoll, aber langsam. Eine gute Strategie verlagert daher den Großteil der Arbeit in schnellere Schichten. Hier unterscheiden sich die drei Tools deutlich, und das kann Ihre Wahl beeinflussen.

Cypress unterstützt Komponententests offiziell für Frameworks wie React, Vue, Angular und Svelte. Sie testen einen Button oder ein Formular im echten Browser, ohne die ganze App zu starten. Playwright bietet ebenfalls Komponententests, kennzeichnet die Funktion in der Dokumentation allerdings als experimentell. Selenium verfolgt dieses Ziel gar nicht; es konzentriert sich auf die Steuerung des Browsers.

Für API Tests bietet Cypress cy.request und Playwright die request Fixture. Beide schicken HTTP Anfragen dann direkt. Somit bereiten Sie Testdaten über die API statt über die Oberfläche vor, und Tests schrumpfen deutlich. In Selenium nutzen Sie dafür die HTTP Bibliothek Ihrer Sprache, etwa requests in Python.

Kurz gesagt ist Cypress die reifste Option, wenn Ihrem Frontend Team Komponententests wichtig sind. Wollen Sie komplette Abläufe und API Tests in einem Paket, liefert Playwright das ausgewogenere Gesamtpaket.

Wie wählen Sie passend zu Sprache und Können Ihres Teams?

Wenn ich zwischen Tools für Testautomatisierung wähle, lautet meine erste Frage immer: Wer schreibt die Tests, und wer pflegt sie? Testcode braucht nämlich Pflege wie Produktivcode, denn er altert mit. Deshalb zählt die Sprache, in der sich Ihr Team wohlfühlt, mehr als jede Funktionsliste.

  • Das Team baut das Frontend in JavaScript oder TypeScript: Cypress oder Playwright. Sind mehrere Tabs und Origins wichtig, nehmen Sie Playwright.
  • Das Team arbeitet vor allem mit Java oder C#: Selenium, wenn die Infrastruktur schon steht. Starten Sie bei null, lohnt ein Blick auf Playwright für Java oder .NET.
  • Das Team nutzt Python: Selenium oder Playwright. Cypress passt hier nicht.
  • Ein separates QA Team teilt keine Sprache mit den Entwicklern: Wählen Sie die Sprache, die das QA Team am besten beherrscht.

Denken Sie außerdem an die Personalsuche. Wie leicht finden Sie jemanden, der Ihr gewähltes Tool beherrscht? Lokale Stellenanzeigen liefern dazu ein realistischeres Bild als jede Beliebtheitsumfrage.

Lohnt sich der Umstieg von Selenium auf Playwright?

Nicht immer. Eine stabile Selenium Suite, die das Team gut kennt, nur wegen eines Trends umzuziehen, endet oft in einem monatelangen Neuschreiben. In dieser Zeit entstehen keine Tests für neue Funktionen, und die Stimmung leidet. Treffen Sie die Entscheidung daher, um ein Problem zu lösen, nicht um einem Trend zu folgen.

Echte Signale für einen Umstieg sehen so aus: Instabile Tests bremsen das Team. Sie brauchen plötzlich WebKit oder mehrere Tabs. Die Wartung verdrängt neue Tests. In diesem Fall empfehle ich einen schrittweisen Weg statt eines Big Bang. Schreiben Sie neue Tests in Playwright, ziehen Sie zuerst die anfälligsten alten Tests um und lassen Sie den Rest bis zu seinem natürlichen Ende stehen.

Ein Wechsel von Cypress zu Playwright folgt derselben Logik. Da beide auf JavaScript setzen, behalten Sie die meisten Hilfsfunktionen für Testdaten und Ihre Page Objects.

Worauf sollten Sie bei den Kosten achten?

Der Kern aller drei Tools für Testautomatisierung ist Open Source und frei von Lizenzgebühren. Die Gesamtkosten bestehen allerdings nicht nur aus Lizenzen. Die echten Kosten sind die Arbeitszeit für Schreiben und Pflege der Tests sowie die Infrastruktur, auf der sie laufen.

  • Arbeitszeit: Der Kampf mit instabilen Tests ist der teuerste versteckte Posten.
  • CI Minuten: Mit der Browsermatrix wachsen Laufzeit und Rechnung.
  • Cloud Dienste: Aufzeichnung und Parallelisierung wie bei Cypress Cloud oder Clouds mit echten Geräten kosten oft extra.
  • Schulung: Wechselt das Team das Tool, gehört die Lernkurve in den Kalender.

Auch der Ort, an dem Tests laufen, ist eine Kostenfrage. Statt der vollen Matrix bei jedem Commit lassen Sie bei Pull Requests einen Browser laufen und beim Merge in den Hauptzweig die volle Matrix. So bleibt das Feedback schnell und die Rechnung im Rahmen. In meinen Webdesign Projekten klären wir diesen Posten von Anfang an, denn nachträglich ergänzte Tests kosten meist mehr.

Wie schützt Testautomatisierung Conversions und Werbebudget?

Dieses technische Thema hat eine sehr konkrete Marketingseite. Landet ein Besucher aus einer Anzeige auf einem kaputten Formular, bezahlen Sie den Klick und bekommen keine Conversion. Außerdem feuert das Conversion Tag nicht, also lernt die Kampagnenoptimierung mit falschen Daten.

Deshalb möchte ich in Projekten, in denen ich die Google Ads Verwaltung übernehme, dass der wichtigste Conversion Ablauf nach jedem Release automatisch läuft. Ein einfacher Playwright Test füllt das Formular aus. Dann bestätigt er, dass die Dankeseite lädt und die Conversion Anfrage den Browser verlässt. So erfahren Sie von einem kaputten Formular noch am selben Tag und nicht eine Woche später aus einem Report.

Hilfreich ist zudem ein Test, ob UTM Parameter Weiterleitungen überstehen. Erstellen Sie Testlinks mit dem UTM Generator und prüfen Sie am Ende des Ablaufs, ob die Parameter noch da sind. Welches Ziel Sie messen sollten, klärt mein Beitrag, wie Sie Conversion Ziele festlegen.

Verändern KI Funktionen beim Testen die Wahl?

Rund um alle drei Tools sind zuletzt KI Funktionen entstanden. Es gibt Assistenten, die Code schreiben, Plugins, die kaputte Selektoren selbst reparieren, und Tools, die Tests aus normaler Sprache entwerfen. Das kann den Start zudem beschleunigen. Meiner Erfahrung nach erhöhen ungeprüft übernommene Tests allerdings die Instabilität.

Betrachten Sie KI also als Helfer, nicht als Entscheidungskriterium. Architektur, Sprachunterstützung und Qualität beim Debugging entscheiden weiterhin. Zudem können sich selbst heilende Selektoren manchmal einen echten Fehler "heilen" und ihn damit verstecken. Das widerspricht dem eigentlichen Zweck eines Tests.

Kurz gesagt bleibt ein guter Test lesbarer Code mit genau einer Aufgabe, der eine klare Geschäftsregel prüft. Daran ändert weder das Tool noch der Assistent etwas.

Was empfehle ich einem Team, das bei null startet?

Haben Sie keine alte Testsuite und starten ein neues Webprojekt, empfehle ich standardmäßig Playwright. Meine Gründe sind die Unterstützung mehrerer Browser, mehrere Sprachen, eingebaute parallele Läufe und die Zeit, die der Trace Viewer beim Debugging spart. Das ist eine Empfehlung, keine allgemeine Regel.

Arbeitet Ihr Team komplett mit JavaScript, bleibt Ihre App auf einem Origin und schauen Entwickler Tests gern beim Laufen zu, ist Cypress ebenfalls eine hervorragende Wahl. Haben Sie dagegen einen großen Java Stack und eine über Jahre gewachsene Selenium Suite, ist Beibehalten oft die wirtschaftlichste Entscheidung.

  1. Erfassen Sie die Browser und Geräte Ihrer Nutzer.
  2. Notieren Sie die Lieblingssprache Ihres Teams und Ihr CI Setup.
  3. Wählen Sie die drei kritischsten Abläufe und bauen Sie Prototypen in zwei Kandidaten.
  4. Beobachten Sie zwei Wochen lang Instabilität, Laufzeit und Debugging Aufwand.
  5. Halten Sie die Entscheidung schriftlich fest und schreiben Sie neue Tests nur noch im gewählten Tool.

Möchten Sie solche technischen Entscheidungen als Teil des gesamten Webprojekts angehen, erreichen Sie mich über die Kontaktseite.

Häufig gestellte Fragen

Welches Tool für Testautomatisierung ist für Einsteiger am leichtesten?
Kennen Sie JavaScript, lernen Sie Cypress und Playwright beide schnell. Cypress wirkt dank des visuellen Runners anfangs oft intuitiver. Playwright übersetzt Ihre Klicks mit Codegen in Code und unterstützt mehrere Sprachen. Kennen Sie Python, fühlt sich der Einstieg mit Selenium oder der Python Version von Playwright natürlicher an.
Ist Selenium veraltet und sollte ich es nicht mehr nutzen?
Nein, Selenium ist nicht veraltet. Das Projekt steht hinter dem W3C WebDriver Standard, unterstützt viele Sprachen und bleibt in Enterprise Teams verbreitet. Für ein neues Projekt wirkt Playwright womöglich praktischer. Eine funktionierende Selenium Suite nur wegen eines Trends umzuziehen, kostet allerdings meist unnötig Zeit und Geld.
Kann ich mit Cypress Safari testen?
Cypress bietet WebKit Unterstützung als experimentelle Funktion. Damit nähern Sie sich der Safari Engine an, echtes Safari ist das aber nicht. Ist echtes Safari Verhalten für Sie kritisch, liefern Selenium mit safaridriver oder eine Cloud mit echten Geräten verlässlichere Ergebnisse. Playwright verfolgt einen ähnlichen Ansatz über WebKit mit breiterer eingebauter Unterstützung.
Ist Playwright kostenlos?
Ja, Playwright ist Open Source und kostet keine Lizenzgebühr. Auch parallele Läufe, der HTML Report und der Trace Viewer sind kostenlos. Kosten entstehen nur durch die CI Infrastruktur, auf der die Tests laufen, und durch die Arbeitszeit Ihres Teams. Nutzen Sie zusätzlich eine Cloud mit echten Geräten, rechnet dieser Anbieter separat ab.
Ersetzt Testautomatisierung manuelles Testen komplett?
Nein. Automatisierung prüft wiederkehrende Abläufe mit klaren Regeln schnell und zuverlässig. Exploratives Testen, Usability Bewertungen und der erste Versuch mit einer neuen Funktion brauchen dagegen menschliche Augen. Ein gutes Team nutzt beides und richtet die Automatisierung auf die Abläufe aus, die beim Ausfall am meisten Geld kosten.
Wie viele automatisierte Tests braucht eine Website?
Eine feste Zahl gibt es nicht. Ich empfehle zum Start, die drei bis fünf kritischsten Abläufe mit Tests über den kompletten Nutzerfluss abzusichern, etwa Formularversand, Checkout, Login und Sprachwechsel. Läuft dieser Kern stabil, ergänzen Sie neue Tests anhand echter Fehler. Das bringt deutlich mehr als eine möglichst hohe Testanzahl.
#Testautomatisierung#Selenium#Cypress#Playwright#Softwaretests#Webentwicklung
Teilen:
Talha Aslan
Talha Aslan

Google Partner und Experte für digitales Marketing. Seit 2012 praktisch in SEO, Google Ads, Webdesign und E-Commerce Projekten; jeder Beitrag hier stammt aus dieser Erfahrung.

Nächstes Projekt

Sprechen wir über Ihr Projekt.

Keine Zwischenhändler, keine Ebenen: Sie sprechen direkt mit dem Experten, der die Arbeit macht. Das Erstgespräch ist kostenlos, ich höre zu und melde mich mit einer klaren Roadmap.

WhatsApp Jetzt anrufen