maven dependency integration with eclipse
Dans ce didacticiel, nous discuterons en détail de l'intégration de Maven avec Eclipse et TestNG, Maven Dependency Scope et Maven Deployment Automation:
Dans le tutoriel précédent, nous avons discuté de la comparaison entre Gradle vs Maven et Maven Plugins. Ce didacticiel explique comment intégrer Maven à d'autres outils, la dépendance Maven et le déploiement Maven.
comment implémenter un arbre de recherche binaire en java
Commençons!
=> Visitez ici pour la série exclusive de didacticiels de formation Maven.
Ce que vous apprendrez:
- Intégration de Maven avec Eclipse
- Intégration de Maven avec TestNG
- Périmètre de dépendance Maven
- Automatisation du déploiement Maven
- Plugin de version Maven
- Conclusion
- lecture recommandée
Intégration de Maven avec Eclipse
Comment intégrer Maven à Eclipse a déjà été discuté en profondeur à ce sujet page
Dans certains scénarios où nous construisons un projet Maven à partir de l'invite de commande et que nous devons apporter ce projet à Eclipse, les étapes suivantes doivent être exécutées.
#1) Accédez à l'emplacement du fichier pom du projet Maven. Exécutez la commande ci-dessous.
mvn eclipse: éclipse
# 2) .classpath et .projet sera créé à l'emplacement du projet Maven.
Vérifiez si le plugin Maven est déjà fourni dans l'Eclipse depuis Windows => Préférences , Maven devrait y être présent. Toutes les versions actuelles d'Eclipse ont les plugins Maven par défaut et si ce n'est pas là, nous pouvons l'obtenir à partir de Ici .
# 3) Maintenant, pour faire fonctionner Maven et Eclipse conjointement, importez le projet Maven à partir du fichier. Sélectionnez ensuite le Projet Maven existant.
# 4) Parcourir l'emplacement du projet et continuer.

L'image ci-dessus montre le projet Maven importé dans Eclipse.
Intégration de Maven avec TestNG
Comment intégrer Maven avec TestNG a été discuté en profondeur sur la page ci-dessous.
=> Intégration de Maven avec TestNg à l'aide du plug-in Maven Surefire
Bien que nous ayons intégré Maven avec TestNG dans notre projet, il peut y avoir des situations où notre projet a plus d'un fichier xml Testng. Par exemple, toutes les fonctionnalités de la suite de régression sont décrites dans un testng.xml et les cas de test de sanity sont décrits dans l'autre fichier testng.xml.
Dans une situation comme celle-ci, nous devons utiliser le profil concept à Maven. Dans le fichier pom, nous devons définir les profils. Chacun fait partie de la balise et est associé à un.
Un fichier pom.xml contenant un extrait de code de profil est donné ci-dessous:
Regression org.apache.maven.plugins maven-surefire-plugin 2.20.1 testngRegression.xml Sanity org.apache.maven.plugins maven-surefire-plugin 2.20.1 testngSanity.xml
Veuillez noter que nous avons deux profils ci-dessus, décrits ci-dessous et que chaque profil est associé à un identifiant. Par exemple, Régression et Santé mentale aussi, sous suiteXmlFiles, nous avons défini le nom du fichier xml Testng correspondant à l'id ( testngRegression.xml et testngSanity.xml ).
télécharger toutes les vidéos de la playlist youtube
Ainsi, nous avons ici deux profils et nous pouvons contrôler chaque fichier Testng à l'aide d'un seul fichier pom.
Maintenant, pour déclencher un scénario de test pour chaque fichier Testng directement à partir de l'invite de commande, nous devons nous déplacer vers le dossier du projet et exécuter la commande suivante.
mvn test –PRegression
Une fois cela exécuté, Maven recherche le profil avec l'id Regression et le correspondant testngRegression.xml déposer. Ainsi, seuls les tests impliqués sont exécutés.
De même, pour un profil avec id Sanity, la commande est:
mvn test –PSanity
Ici le testngSanity.xml Le fichier est utilisé pour déterminer les cas de test à exécuter. Ainsi, pour déclencher un ensemble particulier de cas de test, nous n'avons pas besoin de modifier le nom du fichier TestNG dans le pom, mais cela peut être facilement réalisé en conservant des fichiers TestNG séparés.
Dans le fichier pom, nous pouvons mapper ces fichiers et enfin les exécuter à l'aide de profils dans Maven à partir de l'invite de commande.
Périmètre de dépendance Maven
Maven a un total de six portées comme indiqué ci-dessous.
- À condition de
- Test
- Système
- Importer
- Compiler
- Durée
# 1) Portée d'exécution
La dépendance Maven a une portée comme runtime et n'est pas utilisée à des fins de construction. Il constitue un chemin de classe pour l'exécution et le test du projet. L'extrait de code ci-dessous montre une dépendance d'étendue d'exécution.
com.softwaretesting MavenJava 2.3 runtime
# 2) Portée du système
La dépendance Maven avec une portée en tant que système a une ressemblance avec la portée fournie. Les dépendances système ne peuvent pas être téléchargées à partir du référentiel distant et se trouvent généralement dans les répertoires du projet. L'extrait de code ci-dessous montre une dépendance d'étendue du système.
com.software MavenJava1 system 3.0 ${dir}warWEB-INFlibdep.jar
# 3) Portée fournie
Une dépendance Maven qui a une portée telle que fournie est requise pour la construction et le test des projets. Il n'est pas recommandé d'exporter cette dépendance, car elles sont disponibles au moment de l'exécution. Cependant, cette dépendance est requise pour exécuter la génération. L'extrait de code ci-dessous montre une dépendance d'étendue fournie.
com.test MavenJava2 5.1.1 provided
# 4) Portée du test
La dépendance Maven qui a une portée du test n'est pas requise pour la construction et l'exécution du projet. Ils sont essentiellement utilisés pour compiler et exécuter les cas de test unitaires. L'extrait de code ci-dessous montre une dépendance d'étendue de test.
com.testing MavenJava3 1.0.2 test
# 5) Portée d'importation
Dans le fichier pom, le dépendanceGestion La section contient l'importation de portée. Cela signifie que la dépendance doit être modifiée avec le groupe de dépendances effectif fourni dans la section dependencyManagement du fichier pom. L'extrait de code ci-dessous montre une dépendance d'étendue d'importation.
com.testhelp MavenJava4 SNAP import pom
# 6) Portée de compilation
La dépendance Maven qui a une portée de compilation est celle par défaut. Cette dépendance est essentielle pour la construction, le test et l'exécution du projet. Ceci est surtout important pour résoudre le code source Java contenant des instructions d'importation. L'extrait de code ci-dessous montre une dépendance d'étendue de compilation.
logging log 2.1.3 compile
Automatisation du déploiement Maven
Le déploiement du projet est une phase critique et implique plusieurs étapes définies comme indiqué ci-dessous:
- Le code développé pour être vérifié dans le référentiel.
- Code source à télécharger depuis le référentiel.
- Compilation et construction de l'application et génération de fichiers JAR ou WAR.
- Placer les fichiers JAR ou WAR identifiés dans un emplacement réseau familier.
- Chargez les fichiers JAR ou WAR.
- Déployez les fichiers JAR ou WAR téléchargés sur le serveur cible.
- Le nouveau numéro de version de l'application et la date à mettre à jour dans la documentation.
Les étapes mentionnées ci-dessus sont suivies par chaque membre des équipes impliquées dans le projet. En dehors des étapes énumérées ci-dessus, si quelqu'un est manqué ou si quelque chose n'est pas correctement fait, il en résulte échec de la construction et du déploiement . Donc, entre les deux, s'il y a des erreurs, elles doivent être corrigées automatiquement.
meilleur logiciel de clonage ssd windows 10
Maven suit la méthode d'automatisation du déploiement afin de rendre le déploiement automatique et robuste. Ceci est réalisé par la combinaison des processus énumérés ci-dessous:
- Construction et sortie du projet à prendre en charge par Maven.
- Code source à gérer par subversion et référentiel de code source.
- Binaires de projet pour prendre en charge le gestionnaire de référentiel distant.
Le processus de construction et de publication automatisé de Maven est pris en charge par le plug-in Maven Release. Le fichier pom.xml doit être mis à jour comme illustré ci-dessous.
Le code ci-dessous est pour le projet com.softwaretestHelp pom.xml
4.0.0 com.softwaretestHelp TestApplication war 2.0 WebTest Maven Java http://maven.apache.org http://www.svn.com scm:svn:http://localhost:8080/svn/jrepo/trunk/Framework scm:svn:testing/test@localhost:8080:common_core_api:1101:code SampleTest-Web-Release Release repository http://localhost:8082/nexus/content/repositories/SampleTest-Web-Release org.apache.maven.plugins maven-release-plugin 2.0-beta-9 false deploy [SampleTest-Web- checkin] junit junit 3.9 test
Les principales caractéristiques du fichier pom.xml ci-dessus sont répertoriées ci-dessous:
- SCM : L'emplacement de SVN (où le code source est présent) est configuré par SCM.
- Référentiels : Il s'agit de l'emplacement des fichiers JAR, WAR ou EAR ou de tout autre artefact du projet après l'achèvement réussi de la construction du projet.
- Brancher : Automatisation du déploiement réalisée par le plugin de version Maven.
Plugin de version Maven
Le plugin de version Maven effectue les activités suivantes:
- version mvn: nettoyer - Il nettoie l'espace de travail de la build précédente avant l'arrivée de la future build.
- mvn release: restauration - En cas d'échec de la construction précédente, il revient à l'espace de travail.
- mvn release: préparer - Il vérifie s'il y a des changements non validés dans les fichiers ou non. Vérifie également les dépendances des instantanés et met à jour le numéro de version de l'application. Il modifie le pom en SCM. Il s'occupe de l'exécution du scénario de test et effectue la validation du code final dans SCM. Il effectue le balisage du code dans la subversion. Enfin, le numéro de version est incrémenté et attaché au SNAPSHOT pour les autres versions à venir par ce plugin.
- mvn release: effectuer - Il vérifie le code présent dans le référentiel, puis exécute les objectifs de build Maven pour déployer l'artefact de build dans le référentiel.
Enfin, nous devons exécuter la commande ci-dessous pour créer le projet:
mvn release: prepare
Une fois la construction terminée, exécutez la commande suivante:
mvn release: perform
Le fichier WAR est maintenant téléchargé dans le référentiel.
Conclusion
Nous espérons que les principales parties de l'intégration de Maven avec Eclipse, son intégration avec TestNG, les profils Maven, l'étendue des dépendances de Maven et l'automatisation du déploiement de Maven devraient être compréhensibles maintenant. En outre, nous avons discuté de la plupart des portées des dépendances ici.
Pour le processus de déploiement de Maven, nous avons exploré toutes les étapes en profondeur et expliqué certains des plugins de version Maven. Lisez les sujets et progressivement, vous comprendrez la véritable essence de l'utilisation de Maven dans notre travail.
Nous continuerons avec la série et rassemblerons des connaissances sur l'intégration de Maven Jenkins, les questions d'entretien de Maven, etc. dans nos prochains tutoriels.
=> Vérifiez TOUS les didacticiels Maven ici.
lecture recommandée
- Qu'est-ce que Maven - Tutoriel Maven pour les débutants
- Tutoriels Eclipse détaillés pour les débutants
- Tutoriel TestNG: Introduction à TestNG Framework
- Tutoriel Eclipse: Intégration de TestNG dans l'IDE Java Eclipse
- Configuration de Maven avec Eclipse Java IDE
- Gradle Vs Maven et Plugins Maven
- Documentation Maven avec Jenkins & Maven pour les projets
- Intégration de Maven avec TestNg à l'aide du plug-in Maven Surefire