Ce référentiel vise à vous fournir les instructions initiales pour démarrer votre premier projet d'automatisation de tests mobile avec Appium.
Commencez par installer les prérequis nécessaires en suivant les instructions du fichier PREREQUIS.md.
Ensuite, configurez vos appareils Android et iOS en suivant les directives présentées dans le fichier ANDROID_IOS_SETUP.md.
Pour commencer votre apprentissage, vous avez deux options :
- Créez votre propre projet GitHub.
- Suivez les instructions détaillées du document WDIO_SETUP.md pour créer un nouveau projet à partir de zéro.
- Clonez ou forkez le projet selon vos préférences en utilisant la commande suivante :
git clone https://github.com/rwralitera/appium-install-from-scratch.git
cd appium-install-from-scratch
npm install
- Démarrez votre émulateur Android à l'aide d'Android Studio.
- Modifiez le fichier wdio.conf.ts pour qu'il corresponde à votre émulateur Android.
- Exécutez le test sur Android en utilisant la commande :
npx wdio run ./wdio.conf.ts
- Clonez le projet de la manière suivante :
git clone https://github.com/rwralitera/appium-install-from-scratch.git
cd appium-install-from-scratch
npm install
- Démarrez votre émulateur iOS avec Xcode Simulator.
- Modifiez le fichier wdio.ios.conf.ts pour qu'il corresponde à votre émulateur iOS.
- Exécutez le test sur iOS en utilisant la commande :
npx wdio run ./wdio.ios.conf.ts
⚠️ Vous n'avez pas besoin de démarrer le serveur Appium manuellement pour exécuter les tests. WebdriverIO lance automatiquement Appium en ligne de commande. Le serveur Appium doit uniquement être démarré si vous souhaitez utiliser Appium Inspector.
Consultez le fichier FAQ.md pour obtenir des solutions aux erreurs courantes que vous pourriez rencontrer lors de l'installation. Si vous rencontrez d'autres problèmes, n'hésitez pas à nous les signaler, nous mettrons à jour ce document en conséquence.
Pour aller plus loin dans votre apprentissage d'Appium avec WebdriverIO, voici une liste de sujets à explorer :
- Configurer un linter de manière optimale.
- Gérer plus efficacement les fichiers de configuration.
- Gestion des tests avec Saucelabs.
- Gestion des tests avec BrowserStack.
- Gestion des tests par device.
- Gestion des tests par navigateur.
- Maîtriser la gestion des scripts de lancement des tests.
- Par type de test.
- Par device.
- Configurer des rapports de tests.
- Intégration avec des outils tiers (Slack, Teams, etc)
- Rapports au format HTML.
- Approfondir la connaissance des capabilities d'Appium.
- Apprendre à rechercher les éléments efficacement.
- Par ID.
- Par identifiant d'accessibilité.
- Utilisation de XPath.
- Maîtriser les interactions avec les éléments.
- Effacer un champ.
- Remplir un champ.
- Cliquer sur un élément.
- Apprendre à effectuer des vérifications.
- Utilisation de Chai.
- Gérer les sessions de test.
- Contrôler l'orientation du device.
- Effectuer un retour en arrière.
- Capturer des captures d'écran.
- Apprendre à gérer les timeouts.
- Timeouts implicites.
- Timeouts explicites.
- Savoir manipuler les attributs des éléments.
- Récupérer du texte.
- Récupérer un attribut.
- Comprendre la gestion des états des éléments.
- Vérifier si un élément est sélectionné.
- Vérifier si un élément est activé.
- Vérifier si un élément est affiché.
- Maîtriser les bonnes pratiques pour écrire des tests efficaces.
- Utilisation de Page Objects.
- Utilisation de Hooks.
- Gestion des données de test.
- Explorer des actions avancées.
- Faire défiler l'écran vers le haut.
- Faire défiler l'écran vers le bas.
- Faire défiler l'écran vers la droite.
- Faire défiler l'écran vers la gauche.
- Manipulation de carrousels.
- Gestion des alertes.
- Utilisation de Picker.
- Apprendre à gérer les contextes.
- Travailler en mode Webview.
- Travailler en mode Natif.
- Savoir intégrer vos tests dans un environnement d'Intégration Continue (CI).