Med tiden har vårt community utvecklat flera projekt som du kan använda som inspiration för att sätta upp din egen testsvit.
v9 Mallprojekt
webdriverio/cucumber-boilerplate
Vårt eget mallprojekt för Cucumber-testsviter. Vi har skapat över 150 fördefinierade stegdefinitioner för dig, så att du kan börja skriva funktionsfiler i ditt projekt direkt.
- Ramverk:
- Cucumber
- WebdriverIO
- Funktioner:
- Över 150 fördefinierade steg som täcker nästan allt du behöver
- Integrerar WebdriverIO:s Multiremote-funktionalitet
- Egen demo-app
webdriverio/jasmine-boilerplate
Mallprojekt för att köra WebdriverIO-tester med Jasmine med hjälp av Babel-funktioner och page objects-mönstret.
- Ramverk
- WebdriverIO
- Jasmine
- Funktioner
- Page Object-mönster
- Sauce Labs-integration
webdriverio/electron-boilerplate
Mallprojekt för att köra WebdriverIO-tester på en minimal Electron-applikation.
- Ramverk
- WebdriverIO
- Mocha
- Funktioner
- Electron API-mocking
amiya-pattnaik/wdio-testgen-from-gherkin-js
amiya-pattnaik/wdio-testgen-from-gherkin-ts
Generera automatiskt WebdriverIO Page Object-klasser och Mocha-testspecifikationer från Gherkin .feature-filer — minska manuellt arbete, förbättra konsekvens och påskynda QA-automatisering. Detta projekt producerar inte bara kod som är kompatibel med webdriver.io utan förbättrar även alla funktioner i webdriver.io. Vi har skapat två varianter, en för JavaScript-användare och en annan för TypeScript-användare. Men båda projekten fungerar på samma sätt.
Hur fungerar det?
- Processen följer en tvåstegsautomatisering:
- Steg 1: Gherkin till stepMap (Generera stepMap.json-filer)
- Generera stepMap.json-filer:
- Analyserar .feature-filer skrivna i Gherkin-syntax.
- Extraherar scenarier och steg.
- Producerar en strukturerad .stepMap.json-fil som innehåller:
- åtgärder att utföra (t.ex. klicka, setText, assertVisible)
- selectorName för logisk mappning
- selector för DOM-elementet
- anteckning för värden eller verifiering
- Generera stepMap.json-filer:
- Steg 2: stepMap till kod (Generera WebdriverIO-kod).
Använder stepMap.json för att generera:
- Generera en base page.js-klass med delade metoder och browser.url()-inställning.
- Generera WebdriverIO-kompatibla Page Object Model (POM)-klasser per funktion inuti test/pageobjects/.
- Generera Mocha-baserade testspecifikationer.
- Exempel på katalogstruktur för JavaScript / TypeScript. Nedan är för JS-versionen, TS-versionen har samma 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