testng tutorial introduction testng framework
Ce didacticiel TestNG explique le framework TestNG ainsi que ses fonctionnalités, avantages et avantages par rapport au framework JUnit:
Ce didacticiel vous présentera le concept de Automation Framework, ses avantages et ses types utilisés dans le monde des tests.
Parallèlement au Framework d'automatisation, nous aborderons également l'un des sujets les plus importants, à savoir le Framework de test TestNG.
Commençons!!
Liste de tous les didacticiels TestNG de cette série
Tutoriel n ° 1: Introduction à TestNG Framework
Tutoriel n ° 2: Installation de TestNG
Tutoriel n ° 3: Annotations et auditeurs TestNG
Tutoriel n ° 4: Exemple TestNG
Tutoriel n ° 5: Intégration de Maven avec TestNG à l'aide du plugin Maven Surefire
Tutoriel n ° 6: Exécution de processus TestNG: batch, batch contrôlé et parallèle
Présentation des didacticiels de la série TestNG
Tutorial_Num | Ce que vous apprendrez |
---|---|
Tutoriel n ° 1 | Tutoriel TestNG Introduction au Framework TestNG Ce didacticiel TestNG explique le framework TestNG ainsi que ses fonctionnalités, avantages et avantages par rapport au framework JUnit. |
Tutoriel # 2 | Installation de TestNG L'installation de TestNG est traitée en détail ici. Nous allons également exécuter un programme TestNG de base et voir quels rapports peuvent être générés après le test dans TestNG. |
Tutoriel # 3 | Annotations et auditeurs TestNG Ce didacticiel explique différents types d'annotations et d'écouteurs TestNG. Vous apprendrez également à utiliser les annotations et écouteurs TestNG avec des exemples. |
Tutoriel # 4 | Exemple TestNG Apprenez à créer un fichier TestNG.xml à l'aide de l'exemple TestNG. De nombreuses tâches peuvent être effectuées simultanément avec le fichier TestNG.xml. |
Tutoriel # 5 | Intégration de Maven avec TestNG à l'aide du plugin Maven Surefire Ce tutoriel explique comment utiliser le plug-in Maven Surefire pour gérer nos dépendances et sélectionner et exécuter des scripts ou suites de test particuliers à l'aide de TestNG. |
Tutoriel # 6 | Exécution de processus TestNG: batch, batch contrôlé et parallèle Ce tutoriel explique différents types de processus d'exécution dans TestNG, c'est-à-dire l'exécution par lots, les lots contrôlés, le rapport d'exécution de test et l'exécution parallèle. |
Ce que vous apprendrez:
Introduction au cadre d'automatisation
Un cadre est un ensemble de règles ou de directives telles que les normes de codage, la gestion des données de test, etc. que le monde des tests suit de manière systématique lors de la création de scripts d'automatisation pour obtenir les meilleurs résultats. Il comprend les meilleures pratiques et les outils qui aident les professionnels de l'assurance qualité à tester et à obtenir des résultats plus efficaces.
Les cadres de test sont une partie essentielle de tout processus de test d'automatisation réussi car ils aident à réduire les coûts de maintenance, les efforts de test, la réutilisabilité du code et bien d'autres choses à réaliser. Ici, nous pouvons obtenir le meilleur retour sur investissement (ROI) en le présentant au client ainsi que les avantages que nous obtenons.
Avantages du cadre d'automatisation
Les principaux avantages comprennent:
- Augmentez la vitesse et l'efficacité de l'équipe de test.
- Améliorez la précision de l'équipe de test.
- Réduction des coûts de maintenance des tests.
- Couverture de test maximale.
- Réutilisation du code.
Types de cadre d'automatisation
Il est très important de choisir le type de cadre lors de l'élaboration du plan de test. Vous trouverez ci-dessous les types les plus courants de cadres d'automatisation de test.
- Framework d'automatisation linéaire : Cadre d'enregistrement et de lecture, aucun codage n'est requis.
- Cadre de test modulaire: L'application est divisée en modules individuels puis testée séparément. Ces modules sont ensuite combinés pour créer des tests plus importants.
- Cadre de test basé sur les données : Ici, les données de test sont stockées en externe sous forme de feuilles de calcul Excel, de fichiers texte, de fichiers CSV, etc. Des scripts de test sont connectés à ces fichiers et l'application est testée à l'aide de ces fichiers plusieurs fois avec différents ensembles de données de test.
- Framework de test des lecteurs de mots-clés : Ce cadre utilise des tables de données et des mots-clés auto-descriptifs qui sont également stockés dans les fichiers externes. Les mots-clés représentent diverses actions comme le clic, la connexion, etc. Les mots-clés sont stockés de manière séquentielle avec l'objet requis et les tests sont effectués en conséquence.
- Framework d'automatisation des tests hybrides : Ce cadre est une combinaison d'un ou plusieurs cadres mentionnés ci-dessus.
Qu'est-ce que TestNG?
Il s'agit d'un Framework d'automatisation de test pour Java, inspiré de JUnit et NUnit avec de nouvelles fonctionnalités d'introduction qui le rendent plus puissant et plus facile à utiliser. NG signifie Next Generation. C'est un outil open-source et gratuit.
exemples d'application client-serveur et d'application Web
Il est conçu pour couvrir toutes les catégories de tests comme les tests unitaires, les tests fonctionnels, les tests de bout en bout, les tests de régression, les tests d'intégration, etc. TestNG prend en charge les applications Android et IOS.
Caractéristiques de TestNG
Vous trouverez ci-dessous les fonctionnalités les plus importantes de TestNG:
- Annotations: annotations multiples qui fournissent des mécanismes puissants pour aider vos scripts d'automatisation.
- Prise en charge des tests pilotés par les données à l'aide d'annotations @ Data Provider.
- Prend en charge un non. des paramètres.
- Génération de rapports automatiques que Selenium ne peut pas faire par lui-même.
- Il ne peut exécuter que le scénario de test ayant échoué alors qu’il n’est pas nécessaire d’exécuter toute la suite de tests en cas d’échec du test.
- Prend en charge une variété d'outils et de plug-ins tels que Maven, Jenkins, etc.
- Flexibilité dans les configurations de test.
- Il fournit un modèle d'exécution puissant.
- Les méthodes dépendantes sont utiles pour les tests du serveur d'applications.
- Fonctions JDK par défaut pour l'exécution et la journalisation (plus de dépendances).
Avantages de TestNG sur JUnit
JUnit et TestNG sont tous deux très populaires dans le cadre de test en Java. Les deux frameworks ont des similitudes dans leurs fonctionnalités. Cependant, TestNG a plus de fonctionnalités par rapport à JUnit et cela l'a en effet rendu très facile à utiliser.
Discutons des avantages de TestNG par rapport à JUnit.
- Regroupement: En utilisant TestNG, nous pouvons effectuer de nombreux tests d'automatisation complexes en raison de sa capacité à regrouper les cas de test et à exécuter les groupes. Cependant, dans JUnit, nous ne pouvons pas effectuer de tests de groupe.
- Étendre les classes: Dans TestNG, nous n'avons pas besoin d'étendre les classes. Dans JUnit, nous devons utiliser des classes étendues.
- Annotations obligatoires: Dans TestNG, il n'y a aucune contrainte pour aucun type d'annotations obligatoires. Alors que, dans JUnit, nous devons utiliser des annotations obligatoires comme @BeforeClass et @AfterClass.
- Plus large gamme d'annotations: TestNG propose une gamme plus large de prise en charge des annotations comme @ Before / After Suite, @ Before / After Test, @ Before / After Groups. JUnit n'a que quelques annotations.
- Test de dépendance: Dans TestNG, nous pouvons utiliser les «dependOnMethods» pour effectuer le test de dépendance. Cependant, JUnit ne prend pas en charge cette fonctionnalité.
- Exécution de tests parallèles: Dans TestNG, nous pouvons effectuer une exécution de test parallèle si elle est exécutée via XML. Cependant, JUnit ne prend pas en charge cette fonctionnalité.
- Tests paramétrés: Les tests paramétrés de TestNG sont de nature très conviviale et flexible car nous pouvons fournir les valeurs dans le fichier XML ou à l'intérieur de la classe. JUnit a de nombreuses limitations lors de l'utilisation de cette fonctionnalité.
- Ordre de test: TestNG est meilleur que JUnit lorsque l'exécution des tests est effectuée dans un ordre spécifique. Les méthodes avec une valeur de priorité inférieure seront exécutées en premier.
- Les auditeurs: TestNG prend en charge différents types d'écouteurs et peut être utilisé en ajoutant des annotations. Il n'y a pas de mécanisme dans JUnit pour ajouter des écouteurs à l'aide d'annotations.
- Rapports HTML: TestNG a des générations de rapports HTML riches pour ses cas de test. Il génère trois types de rapports, à savoir la sortie de la console, le rapport HTML et l'index.html. Cependant, JUnit ne crée pas ses propres rapports HTML. Nous devons utiliser l'outil ANT pour la même chose.
Suggestion de lecture => JUnit Vs TestNG - Connaître les différences
Noter: Tout en comparant les deux frameworks, il est recommandé d'utiliser TestNG car il est plus flexible et compatible à utiliser. TestNG est plus avancé en termes de paramétrage, de test de dépendance et de concepts de regroupement. TestNG peut être utilisé pour des tests de haut niveau et des tests d'intégration complexes.
Conclusion
Nous avons discuté ici en détail des différents cadres. Nous avons effectué une étude approfondie de TestNG, de ses avantages, avantages et fonctionnalités par rapport au Framework JUnit.
Notre prochain tutoriel dans cette série explique l'installation de TestNG, notre premier cas de test dans TestNG, les configurations et quelques annotations qui font un cas de test de base TestNG ainsi que le type de rapports qui génèrent la post-exécution d'un cas de test.
=> Visitez ici pour apprendre TestNG à partir de zéro.
lecture recommandée
- 20 questions et réponses d'entrevue TestNG les plus populaires
- Assertions dans Selenium à l'aide des cadres Junit et TestNG
- Tutoriel Eclipse: Intégration de TestNG dans l'IDE Java Eclipse
- Comment utiliser le framework TestNG pour créer des scripts Selenium - Tutoriel TestNG Selenium # 12
- Apprenez à utiliser les annotations TestNG dans Selenium (avec des exemples)
- Test de l'API REST avec Spring RestTemplate et TestNG
- Introduction à Micro Focus LoadRunner - Test de charge avec LoadRunner Tutorial # 1
- Exemple TestNG: Comment créer et utiliser un fichier TestNG.xml