Comment configurer le sélénium avec Chromedriver sur Ubuntu 22.04, 20.04 et 18.04

Comment configurer le sélénium avec Chromedriver sur Ubuntu 22.04, 20.04 et 18.04

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();
1234567891011121314151617181920212223242526272829Importer 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.