Comment configurer le sélénium avec Chromedriver sur Debian Linux
- 3284
- 922
- Zoe Dupuis
Ce tutoriel vous aidera à créer du sélénium avec ChromEdriver sur Debian 9 et Debian 8. Ce tutoriel comprend également un exemple de programme Java qui utilise le serveur autonome Selenium et Chromedriver et exécute un exemple de test de test.
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.
Étape 1 - Prérequis
Connectez-vous à votre système Debian en tant qu'utilisateur privilégié Sudo et exécutez les commandes suivantes pour installer les packages requis sur votre système.
sudo apt-get upding sudo apt-get install -y curl unzip xvfb libxi6 libgconf-2-4
Installez également Java sur votre système. Utilisez la commande ci-dessous pour installer OpenJDK sur votre système, si vous aimez installer Oracle Java 8 sur votre système Debian.
sudo apt-get install-jdk-jdk
Étape 2 - Installez Google Chrome
Installez maintenant le dernier Google Chrome sur votre système Debian en utilisant les commandes 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 | apt-key add - sudo echo "deb [arch = amd64] http: // dl.Google.com / linux / chrome / deb / main stable ">> / etc / apt / sources.liste.d / google-chrome.Liste Sudo apt-get -y mise à jour sudo apt-get -y installer google-chrome-stable
Étape 3 - Installer Chromedriver
ChromEdriver est un serveur autonome qui implémente le protocole de fil pour chrome de WebDriver pour le chrome. Le WebDriver est un outil open source pour les tests automatisés des applications Web sur plusieurs navigateurs.
wget https: // chromedriver.stockage.googleapis.com / 2.41 / chromedriver_linux64.zip 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.13 / sélénium-serveur-standalone-3.13.0.pot
Téléchargez également le testng-6.8.7.Fichier JAR à votre système.
wget http: // www.Java2.com / code / jardownload / testng / testng-6.8.7.pot.zip unzip testng-6.8.7.pot.zipper
Étape 5 - Démarrez Chrome via Selenium Server
Votre configuration de serveur est prête. Démarrez le Chrome via le 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 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 du serveur autonome de Selenium et 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 la chaîne définie est présente sur la page Web ou non.
Créez un programme Java en modifiant un fichier dans l'é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();123456789101112131415161718192021222324252627 | 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 Java ClassPath Environment, y compris le 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.