Comment configurer le sélénium avec Firefox sur Ubuntu

Comment configurer le sélénium avec Firefox sur Ubuntu

Selenium est un cadre de tests Web automatisé. En utilisant cela, nous pouvons automatiser le fonctionnement du navigateur pour tester n'importe quelle application Web. En utilisant le sélénium, vous pouvez exécuter du code prédéfini pour naviguer entre plusieurs pages et un test d'application avec des règles prédéfinies. Ce tutoriel vous aidera à configurer Selenium avec Firefox sur les systèmes Ubuntu, Debian et Linuxmint.

Lisez ceci: Configurez le sélénium avec Chromedriver sur Ubuntu

Étape 1 - Prérequis

Exécutez les commandes suivantes pour installer des 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 le service CI.

sudo apt-get upding sudo apt-get install -y unzip xvfb libxi6 libgconf-2-4 

Installez également Java sur votre système. Utilisez la commande ci-dessous pour installer la dernière version Java disponible.

sudo apt-get install-jdk-jdk 

Étape 2 - Installez Firefox avec le pilote

Firefox est disponible dans les référentiels par défaut APT. Vous pouvez simplement l'installer en exécutant la commande suivante à partir de l'invite de commande.

sudo apt-get -y installer firefox 

Téléchargez également le geckodriver pour le Firefox.

wget https: // github.com / mozilla / geckodriver / releases / download / v0.25.0 / Geckodriver-V0.25.0-LINUX64.le goudron.gz tar xzf geckodriver-v0.25.0-LINUX64.le goudron.gz sudo mv geckodriver / usr / bin / geckodriver 

Étape 3 - Téléchargez le pot de serveur Selenium

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.

Mkdir ~ / Selenium && CD ~ / Selenium wget https: // Selenium-Release.stockage.googleapis.com / 3.141 / sélénium-serveur-standalone-3.141.59.pot 

Téléchargez également le testng-6.5.1.Fichier JAR à votre système.

wget http: // www.Java2.com / code / jardownload / testng / testng-6.5.1.pot.zip unzip testng-6.5.1.pot.zipper 

Étape 4 - Démarrez Selenium Server

Votre configuration de serveur est prête. Démarrez le serveur Selenium autonome à l'aide de l'utilitaire XVFB.

Exécuter le serveur Selenium

Affichage =: 1 xvfb-run java -jar ~ / sélénium / sélénium-server-standalone-3.13.0.pot 

Votre serveur Selenium est maintenant en cours d'exécution avec Firefox. Utilisez ce serveur pour exécuter vos cas de test écrits en sélénium à l'aide du navigateur Web Firefox.

Étape 5 - 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 de Firefoxdriver. Ce programme Java ouvrira une URL de site Web spécifiée et vérifiera si la chaîne définie se 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 dans le fichier.

Importer Java.Io.IoException; org d'importation.openqa.sélénium.Par; org d'importation.openqa.sélénium.WebElement; org d'importation.openqa.sélénium.incendier.Firefoxbiny; org d'importation.openqa.sélénium.incendier.Firefoxdriver; org d'importation.openqa.sélénium.incendier.Firefoxoptions; org d'importation.tester.annotations.Test; classe publique tecadminsseleniumTest public static void main (String [] args) lève ioException, InterruptedException Firefoxbinary Firefoxbinary = new Firefoxbinary (); incendie.AddCommandLineOptions ("- Headless"); incendie.addCommandLineOptions ("- No-sandbox"); Système.SetProperty ("WebDriver.gecko.conducteur "," / usr / bin / geckodriver "); firefoxoptions firefoxoptions = new FireFoxOptions (); firefoxoptions.Setbinary (Firefoxbinary); Firefoxdriver Driver = nouveau Firefoxdriver (FireFoxOptions); conducteur.get ("https: // google.com "); fil.sommeil (1000); if (conducteur.getPagesource ().contient ("kkki'm se sent chanceux")) système.dehors.println ("pass"); else système.dehors.println ("échec"); conducteur.arrêter();
1234567891011121314151617181920212223242526272829303132Importer Java.Io.IoException; org d'importation.openqa.sélénium.Par; import org.openqa.sélénium.WebElement; import org.openqa.sélénium.incendier.Firefoxbinary; import org.openqa.sélénium.incendier.Firefoxdriver; import org.openqa.sélénium.incendier.Firefoxoptions; import org.tester.annotations.Test; classe publique tecadminsseleniumTest public static void main (String [] args) lève ioException, InterruptedException Firefoxbinary Firefoxbinary = new Firefoxbinary (); incendie.AddCommandLineOptions ("- Headless"); incendie.addCommandLineOptions ("- No-sandbox"); Système.SetProperty ("WebDriver.gecko.conducteur "," / usr / bin / geckodriver "); firefoxoptions firefoxoptions = new FireFoxOptions (); firefoxoptions.Setbinary (Firefoxbinary); Firefoxdriver Driver = nouveau Firefoxdriver (FireFoxOptions); conducteur.get ("https: // google.com "); fil.sommeil (1000); if (conducteur.getPagesource ().contient ("kkki'm se sent 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-3.141.59.pot et testng-6.5.1.pot. Puis compilez le programme Java et exécutez-le.

exporter classpath = ".: sélénium-serveur-standalone-3.141.59.pot: testng-6.5.1.pot" 

Maintenant, compilez votre programme Java et exécutez-le.

Javac Tecadminceleniumtest.Java Java Tecadminceleniumtest 

Si la chaîne de recherche définie trouvée, vous obtiendrez un message «passer» et si la chaîne n'est pas trouvée sur la page Web, vous recevrez le message «échouer» à l'écran.