Im Laufe der Zeit hat unsere Community mehrere Projekte entwickelt, die Sie als Inspiration für die Einrichtung Ihrer eigenen Testsuite verwenden können.
v9 Boilerplate-Projekte
webdriverio/cucumber-boilerplate
Unser eigenes Boilerplate für Cucumber-Testsuiten. Wir haben über 150 vordefinierte Schrittdefinitionen für Sie erstellt, damit Sie sofort mit dem Schreiben von Feature-Dateien in Ihrem Projekt beginnen können.
- Framework:
- Cucumber
- WebdriverIO
- Funktionen:
- Über 150 vordefinierte Schritte, die fast alles abdecken, was Sie brauchen
- Integriert WebdriverIOs Multiremote-Funktionalität
- Eigene Demo-App
webdriverio/jasmine-boilerplate
Boilerplate-Projekt zum Ausführen von WebdriverIO-Tests mit Jasmine unter Verwendung von Babel-Funktionen und dem Page-Objects-Pattern.
- Frameworks
- WebdriverIO
- Jasmine
- Funktionen
- Page Object Pattern
- Sauce Labs Integration
webdriverio/electron-boilerplate
Boilerplate-Projekt zum Ausführen von WebdriverIO-Tests in einer minimalen Electron-Anwendung.
- Frameworks
- WebdriverIO
- Mocha
- Funktionen
- Electron API Mocking
syamphaneendra/webdriverio9-boilerplate
Dieses Boilerplate-Projekt enthält WebdriverIO 9 Mobile-Tests mit Cucumber, TypeScript und Appium für Android- und iOS-Plattformen, nach dem Page Object Model-Muster. Es bietet umfassendes Logging, Reporting, mobile Gesten, App-to-Web-Navigation und CI/CD-Integration.
-
Frameworks:
- WebdriverIO v9
- Cucumber v9
- Appium v2.5
- TypeScript v5
-
Funktionen:
- Multi-Plattform-Unterstützung
- Android (UiAutomator2)
- iOS (XCUITest)
- Mobile Gesten
- Scrollen
- Wischen
- Lange drücken
- Tastatur ausblenden
- App-zu-Web-Navigation
- Kontextwechsel
- WebView-Unterstützung
- Browser-Automation (Chrome/Safari)
- Frischer App-Zustand
- Automatisches App-Reset zwischen Szenarien
- Konfigurierbares Reset-Verhalten (noReset, fullReset)
- Gerätekonfiguration
- Zentralisierte Geräteverwaltung
- Einfaches Wechseln der Plattform
- Beispiel für Verzeichnisstruktur für JavaScript / TypeScript. Unten ist für die JS-Version, die TS-Version hat die gleiche Struktur.
- Multi-Plattform-Unterstützung
amiya-pattnaik/wdio-testgen-from-gherkin-js
amiya-pattnaik/wdio-testgen-from-gherkin-ts
Automatisches Generieren von WebdriverIO Page Object-Klassen und Mocha-Test-Spezifikationen aus Gherkin .feature-Dateien — reduziert manuellen Aufwand, verbessert Konsistenz und beschleunigt QA-Automatisierung. Dieses Projekt produziert nicht nur webdriver.io-kompatiblen Code, sondern erweitert auch alle Funktionalitäten von webdriver.io. Wir haben zwei Varianten erstellt, eine für JavaScript-Benutzer und eine für TypeScript-Benutzer. Aber beide Projekte funktionieren auf die gleiche Weise.
Wie funktioniert es?
- Der Prozess folgt einer zweistufigen Automatisierung:
- Schritt 1: Gherkin zu stepMap (Generiert stepMap.json-Dateien)
- Generiert stepMap.json-Dateien:
- Analysiert .feature-Dateien in Gherkin-Syntax.
- Extrahiert Szenarien und Schritte.
- Erzeugt eine strukturierte .stepMap.json-Datei mit:
- auszuführende Aktion (z.B. klicken, setText, assertVisible)
- selectorName für logisches Mapping
- Selektor für das DOM-Element
- Hinweis für Werte oder Assertion
- Generiert stepMap.json-Dateien:
- Schritt 2: stepMap zu Code (Generiert WebdriverIO-Code).
Verwendet stepMap.json zur Generierung von:
- Generiert eine base page.js Klasse mit gemeinsamen Methoden und browser.url() Setup.
- Generiert WebdriverIO-kompatible Page Object Model (POM)-Klassen pro Feature innerhalb von test/pageobjects/.
- Generiert Mocha-basierte Test-Spezifikationen.
- Beispiel für Verzeichnisstruktur für JavaScript / TypeScript. Unten ist für die JS-Version, die TS-Version hat die gleiche Struktur.
project-root/
├── features/ # Gherkin .feature files (user input / source file)
├── stepMaps/ # Auto-generated .stepMap.json files
├── test/
│ ├── pageobjects/ # Auto-generated WebdriverIO tests Page Object Model classes
│ └── specs/ # Auto-generated Mocha test specs
├── src/
│ ├── cli.js # Main CLI logic
│ ├── generateStepsMap.js # Feature-to-stepMap generator
│ ├── generateTestsFromMap.js # stepMap-to-page/spec generator
│ ├── utils.js # Helper methods
│ └── config.js # Paths, fallback selectors, aliases
│ └── __tests__/ # Unit tests (Vitest)
├── testgen.js # CLI entry point
│── wdio.config.js # WebdriverIO configuration
├── package.json # Scripts and dependencies
├── selector-aliases.json # Optional user-defined selector overrides the primary selector
v8 Boilerplate-Projekte
amiya-pattnaik/webdriverIO-with-cucumberBDD
- Framework: WDIO-V8 mit Cucumber (V8x).
- Funktionen:
- Page Objects Model verwendet ES6/ES7-Klassen-Ansatz und TypeScript-Unterstützung
- Beispiele für Multi-Selektor-Option zum Abfragen von Elementen mit mehreren Selektoren gleichzeitig
- Beispiele für Multi-Browser- und Headless-Browser-Ausführung mit Chrome und Firefox
- Cloud-Testing-Integration mit BrowserStack, Sauce Labs, TestMu AI (früher LambdaTest)
- Beispiele für Lesen/Schreiben von Daten aus MS-Excel für einfaches Testdatenmanagement aus externen Datenquellen mit Beispielen
- Datenbankunterstützung für alle RDBMS (Oracle, MySql, TeraData, Vertica usw.), Ausführung von Abfragen / Abrufen von Ergebnismengen usw. mit Beispielen für E2E-Tests
- Mehrfache Berichterstattung (Spec, Xunit/Junit, Allure, JSON) und Hosting von Allure- und Xunit/Junit-Berichten auf WebServer
- Beispiele mit Demo-App https://search.yahoo.com/ und http://the-internet.herokuapp.com
- BrowserStack, Sauce Labs, TestMu AI (früher LambdaTest) und Appium-spezifische
.config-Datei (für Wiedergabe auf mobilen Geräten). Für eine Ein-Klick-Appium-Einrichtung auf lokalen Maschinen für iOS und Android siehe appium-setup-made-easy-OSX.
amiya-pattnaik/webdriverIO-with-mochaBDD
- Framework: WDIO-V8 mit Mocha (V10x).
- Funktionen:
- Page Objects Model verwendet ES6/ES7-Klassen-Ansatz und TypeScript-Unterstützung
- Beispiele mit Demo-App https://search.yahoo.com und http://the-internet.herokuapp.com
- Beispiele für Multi-Browser- und Headless-Browser-Ausführung mit Chrome und Firefox
- Cloud-Testing-Integration mit BrowserStack, Sauce Labs, TestMu AI (früher LambdaTest)
- Mehrfache Berichterstattung (Spec, Xunit/Junit, Allure, JSON) und Hosting von Allure- und Xunit/Junit-Berichten auf WebServer
- Beispiele für Lesen/Schreiben von Daten aus MS-Excel für einfaches Testdatenmanagement aus externen Datenquellen mit Beispielen
- Beispiele für DB-Verbindung zu jedem RDBMS (Oracle, MySql, TeraData, Vertica usw.), jede Abfrageausführung / Abrufen von Ergebnismengen usw. mit Beispielen für E2E-Tests
- BrowserStack, Sauce Labs, TestMu AI (früher LambdaTest) und Appium-spezifische
.config-Datei (für Wiedergabe auf mobilen Geräten). Für eine Ein-Klick-Appium-Einrichtung auf lokalen Maschinen für iOS und Android siehe appium-setup-made-easy-OSX.
amiya-pattnaik/webdriverIO-with-jasmineBDD
- Framework: WDIO-V8 mit Jasmine (V4x).
- Funktionen:
- Page Objects Model verwendet ES6/ES7-Klassen-Ansatz und TypeScript-Unterstützung
- Beispiele mit Demo-App https://search.yahoo.com und http://the-internet.herokuapp.com
- Beispiele für Multi-Browser- und Headless-Browser-Ausführung mit Chrome und Firefox
- Cloud-Testing-Integration mit BrowserStack, Sauce Labs, TestMu AI (früher LambdaTest)
- Mehrfache Berichterstattung (Spec, Xunit/Junit, Allure, JSON) und Hosting von Allure- und Xunit/Junit-Berichten auf WebServer
- Beispiele für Lesen/Schreiben von Daten aus MS-Excel für einfaches Testdatenmanagement aus externen Datenquellen mit Beispielen
- Beispiele für DB-Verbindung zu jedem RDBMS (Oracle, MySql, TeraData, Vertica usw.), jede Abfrageausführung / Abrufen von Ergebnismengen usw. mit Beispielen für E2E-Tests
- BrowserStack, Sauce Labs, TestMu AI (früher LambdaTest) und Appium-spezifische
.config-Datei (für Wiedergabe auf mobilen Geräten). Für eine Ein-Klick-Appium-Einrichtung auf lokalen Maschinen für iOS und Android siehe appium-setup-made-easy-OSX.
syamphaneendra/webdriverio-web-mobile-boilerplate
Dieses Boilerplate-Projekt enthält WebdriverIO 8 Tests mit Cucumber und TypeScript nach dem Page-Objects-Muster.
-
Frameworks:
- WebdriverIO v8
- Cucumber v8
-
Funktionen:
- Typescript v5
- Page Object Pattern
- Prettier
- Multi-Browser-Unterstützung
- Chrome
- Firefox
- Edge
- Safari
- Standalone
- Cross-Browser parallele Ausführung
- Appium
- Cloud-Testing-Integration mit BrowserStack & Sauce Labs
- Docker-Service
- Share-Data-Service
- Separate Konfigurationsdateien für jeden Service
- Testdatenverwaltung & Lesen nach Benutzertyp
- Berichterstattung
- Dot
- Spec
- Multiple Cucumber HTML-Berichte mit Fehler-Screenshots
- Gitlab-Pipelines für Gitlab-Repository
- Github Actions für Github-Repository
- Docker Compose für die Einrichtung des Docker-Hub
- Barrierefreiheitstests mit AXE
- Visuelle Tests mit Applitools
- Log-Mechanismus
klassijs/klassi-js (cucumber-template)
-
Frameworks
- WebdriverIO (v8)
- Cucumber (v8)
-
Funktionen
- Enthält Beispiel-Testszenarien in Cucumber
- Integrierte Cucumber-HTML-Berichte mit eingebetteten Videos bei Fehlern
- Integrierte Lambdatest- und CircleCI-Dienste
- Integrierte visuelle, Barrierefreiheits- und API-Tests
- Integrierte E-Mail-Funktionalität
- Integrierter S3-Bucket für Testreportspeicherung und -abruf
serenity-js/serenity-js-mocha-webdriverio-template/
Serenity/JS Vorlagenprojekt, das Ihnen hilft, mit Akzeptanztests Ihrer Webanwendungen unter Verwendung der neuesten WebdriverIO, Mocha und Serenity/JS zu beginnen.
-
Frameworks
- WebdriverIO (v8)
- Mocha (v10)
- Serenity/JS (v3)
- Serenity BDD-Berichterstattung
-
Funktionen
- Screenplay Pattern
- Automatische Screenshots bei Testfehlern, eingebettet in Berichte
- Continuous Integration (CI)-Setup mit GitHub Actions
- Demo Serenity BDD-Berichte veröffentlicht auf GitHub Pages
- TypeScript
- ESLint
serenity-js/serenity-js-cucumber-webdriverio-template/
Serenity/JS Vorlagenprojekt, das Ihnen hilft, mit Akzeptanztests Ihrer Webanwendungen unter Verwendung der neuesten WebdriverIO, Cucumber und Serenity/JS zu beginnen.
-
Frameworks
- WebdriverIO (v8)
- Cucumber (v9)
- Serenity/JS (v3)
- Serenity BDD-Berichterstattung
-
Funktionen
- Screenplay Pattern
- Automatische Screenshots bei Testfehlern, eingebettet in Berichte
- Continuous Integration (CI)-Setup mit GitHub Actions
- Demo Serenity BDD-Berichte veröffentlicht auf GitHub Pages
- TypeScript
- ESLint
Muralijc/wdio-headspin-boilerplate
Boilerplate-Projekt zum Ausführen von WebdriverIO-Tests in der Headspin Cloud (https://www.headspin.io/) unter Verwendung von Cucumber-Features und dem Page-Objects-Muster.
-
Frameworks
- WebdriverIO (v8)
- Cucumber (v8)
-
Funktionen
- Cloud-Integration mit Headspin
- Unterstützt Page Object Model
- Enthält Beispielszenarien in deklarativem BDD-Stil
- Integrierte Cucumber-HTML-Berichte
v7 Boilerplate-Projekte
webdriverio/appium-boilerplate
Boilerplate-Projekt zum Ausführen von Appium-Tests mit WebdriverIO für:
- iOS/Android Native Apps
- iOS/Android Hybrid Apps
- Android Chrome und iOS Safari Browser
Dieses Boilerplate enthält Folgendes:
- Framework: Mocha
- Funktionen:
- Konfigurationen für:
- iOS- und Android-Apps
- iOS- und Android-Browser
- Helfer für:
- WebView
- Gesten
- Native Alerts
- Picker
- Testbeispiele für:
- WebView
- Login
- Formulare
- Wischen
- Browser
- Konfigurationen für: