Comment configurer le sélénium avec Chromedriver sur Ubuntu 22.04, 20.04 et 18.04
- 4047
- 352
- Victor Charpentier
Ce tutoriel vous aidera à configurer le sélénium avec Chromedriver sur Ubuntu et les systèmes Linuxmint. Ce tutoriel comprend également un exemple de programme Java qui utilise un serveur autonome de sélénium et ChromEdriver et exécute un exemple de test de test.
Lisez ceci: Configurez le sélénium avec Firefox sur Ubuntu
Étape 1 - Prérequis
Exécutez les commandes suivantes pour installer les packages requis sur votre système. Ici, XVFB (X Virtual FrameBuffer) est un serveur d'affichage en mémoire pour un système d'exploitation de type Unix (E.g., Linux). Il implémente le protocole de serveur d'affichage X11 sans aucun affichage. Ceci est utile pour les applications CLI comme les services CI.
Mise à jour Sudo Apt
sudo apt install -y unzip xvfb libxi6 libgconf-2-4
Installez également Java sur votre système. Installons Oracle Java 8 sur votre système ou utilisons la commande ci-dessous pour installer OpenJDK.
sudo apt installer par défaut-jdk
Étape 2 - Installez Google Chrome
Installez maintenant le dernier package Google Chrome sur votre système à l'aide des commandes de liste ci-dessous. Google Chrome sans tête ouvre des portes multiples pour l'automatisation.
sudo curl -ss -o - https: // dl-ssl.Google.com / linux / linux_signing_key.pub | Ajout de clé apte
sudo bash -c "echo 'deb [arch = amd64] http: // dl.Google.com / linux / chrome / deb / stable main '>> / etc / apt / sources.liste.d / google-chrome.liste"
Mise à jour Sudo Apt -y
sudo apt -y installer google-chrome-stable
Étape 3 - Installation de Chromedriver
Vous devez également configurer Chromedriver sur votre système. ChromEdriver est un serveur autonome qui implémente le protocole filaire de WebDriver pour Chromium. Le WebDriver est un outil open-source pour les tests automatisés des applications Web sur plusieurs navigateurs.
Découvrez la version Google Chrome installée sur votre système.
Google-Chrome - Version
Sortie Google Chrome 94.0.4606.71
Ensuite, visitez la page de téléchargement de Chromedriver et téléchargez la version correspondante de chromedriver
sur votre système.
Dans mon cas, Google Chrome 94 fonctionne sur mon système. Alors téléchargez le fichier suivant. Vous devez vous assurer de télécharger la version correcte d'un fichier:
wget https: // chromedriver.stockage.googleapis.com / 94.0.4606.61 / chromedriver_linux64.zipper
unzip chromedriver_linux64.zipper
Vous pouvez trouver le dernier Chromedriver sur sa page de téléchargement officielle. Exécutez maintenant les commandes ci-dessous pour configurer Chromedriver sur votre système.
sudo mv chromedriver / usr / bin / chromedriver
sudo chown racine: racine / usr / bin / chromedriver
sudo chmod + x / usr / bin / chromedriver
Étape 4 - Télécharger les fichiers de jar requis
Le serveur Selenium est nécessaire pour exécuter des webdrivers à distance de sélénium. Vous devez télécharger le fichier JAR Selenium Standalone Server en utilisant les commandes ci-dessous ou visiter ici pour trouver la dernière version du fichier JAR.
wget https: // selenium-libérer.stockage.googleapis.com / 3.141 / sélénium-serveur-standalone-3.141.59.pot
mv sélénium-serveur-standalone-3.141.59.Jar Selenium-Server-Standalone.pot
Téléchargez également le testng-6.8.7.pot fichier à votre système.
wget http: // www.Java2.com / code / jardownload / testng / testng-6.8.7.pot.zipper
unzip testng-6.8.7.pot.zipper
Étape 5 - Démarrez Chrome via Selenium Server
Votre configuration de serveur est prête. Démarrer Chrome via un serveur Selenium autonome à l'aide de l'utilitaire XVFB.
Exécuter Chrome via Selenium Server
xvfb-run java -dwebdriver.chrome.pilote = / usr / bin / chromedriver -jar sélénium-server-standalone.pot
Utiliser -déboguer
Option à la fin de la commande pour démarrer le serveur en mode débogage.
Vous pouvez aussi Démarrer Chromedriver sans tête en tapant la commande ci-dessous sur le terminal.
ChromEdriver --Url-Base = / Wd / Hub
Votre serveur Selenium est maintenant en cours d'exécution avec Chrome. Utilisez ce serveur pour exécuter vos cas de test écrits en sélénium à l'aide du navigateur Web Google Chrome. L'étape suivante est une étape facultative et ne dépend pas de l'étape 5.
Étape 6 - Exemple de programme Java (facultatif)
Ceci est une étape optionnelle. Il décrit l'exécution d'un seul cas de test à l'aide d'un serveur autonome de sélénium et de Chromedriver. Créons un programme Java à l'aide du serveur Selenium et du pilote Chrome. Ce programme Java ouvrira une URL de site Web spécifiée et vérifiera si une chaîne définie est présente sur la page Web ou non.
Créez un programme Java en modifiant un fichier dans un éditeur de texte.
vim tecadminceleniumtest.Java
Ajoutez le contenu ci-dessous au fichier.
Importer Java.Io.IoException; org d'importation.openqa.sélénium.WebDriver; org d'importation.openqa.sélénium.chrome.Chromeoptions; org d'importation.openqa.sélénium.chrome.Chromedriver; org d'importation.tester.annotations.Test; classe publique tecadminsseleniumtest public static void main (String [] args) lève ioexception, interruptedException System.SetProperty ("WebDriver.chrome.pilote "," / usr / bin / chromedriver "); chromeoptions chromeoptions = new chromeoptions (); chromeoptions.addArguments ("- Headless"); chromeoptions.addArguments ("- no-sandbox"); WebDriver Driver = new Chromedriver (ChromeOptions); conducteur.get ("https: // google.com "); fil.sommeil (1000); if (conducteur.getPagesource ().contient ("je me sens chanceux")) système.dehors.println ("pass"); else système.dehors.println ("échec"); conducteur.arrêter();1234567891011121314151617181920212223242526272829 | Importer Java.Io.IoException; org d'importation.openqa.sélénium.WebDriver; import org.openqa.sélénium.chrome.Chromeoptions; import org.openqa.sélénium.chrome.Chromedriver; import org.tester.annotations.Test; classe publique tecadminsseleniumtest public static void main (String [] args) lève ioexception, interruptedException System.SetProperty ("WebDriver.chrome.pilote "," / usr / bin / chromedriver "); chromeoptions chromeoptions = new chromeoptions (); chromeoptions.addArguments ("- Headless"); chromeoptions.addArguments ("- no-sandbox"); WebDriver Driver = new Chromedriver (ChromeOptions); conducteur.get ("https: // google.com "); fil.sommeil (1000); if (conducteur.getPagesource ().contient ("je me sens chanceux")) système.dehors.println ("pass"); else système.dehors.println ("échec"); conducteur.arrêter(); |
Vous pouvez modifier l'URL «https: // google.com »avec toute autre URL de votre choix, puis modifiez également la chaîne de recherche comme« Je me sens chanceux »utilisé dans le programme Java ci-dessus. Enregistrez votre programme Java et exécutez-le. Tout d'abord, vous devez définir la variable d'environnement Java ClassPath, y compris sélénium-serveur-standalone.pot et testng-6.8.7.pot. Puis compilez le programme Java et exécutez-le.
exporter classpath = ".: sélénium-serveur-standalone.pot: testng-6.8.7.pot"
Javac Tecadminceleniumtest.Java
Java Tecadminceleniumtest
Vous verrez les résultats ci-dessous. Si la chaîne de recherche définie est trouvée, vous obtiendrez le message «passer» et si la chaîne n'est pas trouvée sur la page Web, vous recevrez le message «échouer» à l'écran.