Au fil du temps, notre communauté a développé plusieurs projets que vous pouvez utiliser comme inspiration pour configurer votre propre suite de tests.
Projets de base v9
webdriverio/cucumber-boilerplate
Notre propre boilerplate pour les suites de tests Cucumber. Nous avons créé plus de 150 définitions d'étapes prédéfinies pour vous, afin que vous puissiez commencer à écrire des fichiers de fonctionnalités dans votre projet immédiatement.
- Framework:
- Cucumber
- WebdriverIO
- Caractéristiques:
- Plus de 150 étapes prédéfinies qui couvrent presque tout ce dont vous avez besoin
- Intègre la fonctionnalité Multiremote de WebdriverIO
- Application de démonstration propre
webdriverio/jasmine-boilerplate
Projet de base pour exécuter des tests WebdriverIO avec Jasmine en utilisant les fonctionnalités Babel et le modèle de page objects.
- Frameworks
- WebdriverIO
- Jasmine
- Caractéristiques
- Modèle Page Object
- Intégration avec Sauce Labs
webdriverio/electron-boilerplate
Projet de base pour exécuter des tests WebdriverIO sur une application Electron minimale.
- Frameworks
- WebdriverIO
- Mocha
- Caractéristiques
- Simulation de l'API Electron
amiya-pattnaik/wdio-testgen-from-gherkin-js
amiya-pattnaik/wdio-testgen-from-gherkin-ts
Générez automatiquement des classes Page Object WebdriverIO et des spécifications de test Mocha à partir de fichiers .feature Gherkin — réduisant l'effort manuel, améliorant la cohérence et accélérant l'automatisation QA. Ce projet produit non seulement du code compatible avec webdriver.io, mais améliore également toutes les fonctionnalités de webdriver.io. Nous avons créé deux versions, une pour les utilisateurs JavaScript et l'autre pour les utilisateurs TypeScript. Mais les deux projets fonctionnent de la même manière.
Comment ça marche ?
- Le processus suit une automatisation en deux étapes :
- Étape 1 : Gherkin vers stepMap (Génération de fichiers stepMap.json)
- Génération de fichiers stepMap.json :
- Analyse les fichiers .feature écrits en syntaxe Gherkin.
- Extrait les scénarios et les étapes.
- Produit un fichier .stepMap.json structuré contenant :
- action à effectuer (par exemple, click, setText, assertVisible)
- selectorName pour le mappage logique
- selector pour l'élément DOM
- note pour les valeurs ou assertions
- Génération de fichiers stepMap.json :
- Étape 2 : stepMap vers Code (Génération de code WebdriverIO).
Utilise stepMap.json pour générer :
- Génère une classe page.js de base avec des méthodes partagées et la configuration browser.url().
- Génère des classes Page Object Model (POM) compatibles WebdriverIO par fonctionnalité dans test/pageobjects/.
- Génère des spécifications de test basées sur Mocha.
- Exemple de structure de répertoire pour JavaScript / TypeScript. Ci-dessous pour la version JS, la version TS a la même structure.
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