Cómo configurar el selenio con cromedriver en Ubuntu 22.04, 20.04 y 18.04
- 4031
- 370
- Hugo Vera
Este tutorial lo ayudará a configurar Selenium con ChromedRiver en Ubuntu y LinuxMint Systems. Este tutorial también incluye un ejemplo de un programa Java que utiliza un servidor independiente de Selenium y Chromedriver y ejecuta un caso de prueba de muestra.
Lea esto: Configurar Selenium con Firefox en Ubuntu
Paso 1 - Requisitos previos
Ejecute los siguientes comandos para instalar los paquetes requeridos en su sistema. Aquí XVFB (x virtual frameBuffer) es un servidor de visualización en memoria para un sistema operativo similar a UNIX (E.gramo., Linux). Implementa el protocolo del servidor de visualización X11 sin ninguna pantalla. Esto es útil para aplicaciones CLI como CI Services.
Actualización de sudo apto
sudo apt instalación -y unzip xvfb libxi6 libgconf-2-4
Además, instale Java en su sistema. Instale Oracle Java 8 en su sistema o usemos el comando a continuación para instalar OpenJDK.
sudo apt instalación predeterminado-jdk
Paso 2 - Instale Google Chrome
Ahora instale el último paquete de Google Chrome en su sistema utilizando los comandos de lista a continuación. La función sin cabeza de Google Chrome abre puertas multipados para la automatización.
sudo curl -ss -o -https: // dl -ssl.Google.com/linux/linux_signing_key.pub | Atrás de la tecla APT
sudo bash -c "echo 'deb [arch = amd64] http: // dl.Google.com/linux/chrome/deb/stable main '>>/etc/apt/fuentes.lista.d/google-chrome.lista"
actualización de sudo apt -y
sudo apt -y instalar google-chrome-estable
Paso 3 - Instalación de ChromedRiver
También debe configurar ChromedRiver en su sistema. ChromedRiver es un servidor independiente que implementa el protocolo de cable de Webdriver para el cromo. WebDriver es una herramienta de código abierto para las pruebas automatizadas de aplicaciones web en múltiples navegadores.
Descubra la versión de Google Chrome instalada en su sistema.
Google-Chrome-Versión
Salida Google Chrome 94.0.4606.71
A continuación, visite la página de descarga de ChromedRiver y descargue la versión coincidente de cromedríguico
en tu sistema.
En mi caso, Google Chrome 94 se está ejecutando en mi sistema. Así que descarga el siguiente archivo. Debe asegurarse de descargar la versión correcta de un archivo:
wget https: // cromedriver.almacenamiento.Googleapis.com/94.0.4606.61/Chromedriver_Linux64.cremallera
Unzip Chromedriver_Linux64.cremallera
Puede encontrar el último ChromedRiver en su página de descarga oficial. Ahora ejecute los comandos a continuación para configurar ChromedRiver en su sistema.
sudo MV Chromedriver/usr/bin/cromedriver
Root de chown de sudo: raíz/usr/bin/cromedriver
sudo chmod +x/usr/bin/cromedriver
Paso 4 - Descargue los archivos JAR requeridos
Se requiere que el servidor de Selenium ejecute Selenium WebDrivers remoto. Debe descargar el archivo jar de servidor independiente de Selenium utilizando los comandos a continuación o visitar aquí para encontrar la última versión del archivo jar.
wget https: // liberación de selenio.almacenamiento.Googleapis.com/3.141/selenio-server-standalone-3.141.59.frasco
MV Selenium-server-Standalone-3.141.59.jar selenio-server-sandalone.frasco
Además, descargue el testng-6.8.7.frasco Archivo a su sistema.
wget http: // www.java2s.com/code/jardownload/testng/testng-6.8.7.frasco.cremallera
descomparar testng-6.8.7.frasco.cremallera
Paso 5 - Inicie Chrome a través de Selenium Server
La configuración de su servidor está lista. Inicie Chrome a través de un servidor de selenio independiente utilizando la utilidad XVFB.
Ejecute Chrome a través de Selenium Server
Java -Dwebdriver de XVFB.cromo.controlador =/usr/bin/Chromedriver -jar selenium-server-standalone.frasco
Usar -depurar
Opción al final del comando para iniciar el servidor en modo de depuración.
Tú también puedes Comience el cromedriver sin cabeza escribiendo el siguiente comando en la terminal.
cromedriver --Url-base =/wd/hub
Su servidor de selenio ahora se está ejecutando con Chrome. Use este servidor para ejecutar sus casos de prueba escritos en Selenium utilizando el navegador web Google Chrome. El siguiente paso es un paso opcional y no depende del paso 5.
Paso 6 - Programa Java de muestra (opcional)
Este es un paso opcional. Describe ejecutar un solo caso de prueba utilizando un servidor independiente de Selenium y ChromedRiver. Creemos un programa Java utilizando el servidor de Selenium y el controlador Chrome. Este programa Java abrirá una URL de sitio web especificada y verificará si una cadena definida está presente en la página web o no.
Cree un programa Java editando un archivo en un editor de texto.
vim tecadminseleniumtest.Java
Agregue el contenido a continuación al archivo.
importar java.IO.Ioexception; Org de importación.abierto.selenio.Webdriver; Org de importación.abierto.selenio.cromo.Cromeoptions; Org de importación.abierto.selenio.cromo.Cromedriver; Org de importación.prueba.anotaciones.Prueba; clase pública TecadminseleniumTest public static void main (string [] args) lanza ioexception, interruptedexception sistema.setProperty ("WebDriver.cromo.controlador ","/usr/bin/Chromedriver "); ChromeOptions ChromeOptions = new ChromeOptions (); ChromeOptions.addarguments ("-sin cabeza"); cromeoptions.addarGuments ("-no-sandbox"); WebDriver Driver = new ChromedRiver (ChromeOptions); conductor.Get ("https: // google.com "); hilo.dormir (1000); if (controlador.getPageSource ().contiene ("me siento afortunado")) sistema.afuera.println ("pase"); else sistema.afuera.println ("Fail"); conductor.abandonar();1234567891011121314151617181920212223242526272829 | importar java.IO.Ioexception; Org de importación.abierto.selenio.WebDriver; importar orgía.abierto.selenio.cromo.Cromeoptions; importar orgía.abierto.selenio.cromo.Cromedriver; importar orgía.prueba.anotaciones.Prueba; clase pública TecadminseleniumTest public static void main (string [] args) lanza ioexception, interruptedexception sistema.setProperty ("WebDriver.cromo.controlador ","/usr/bin/Chromedriver "); ChromeOptions ChromeOptions = new ChromeOptions (); ChromeOptions.addarguments ("-sin cabeza"); cromeoptions.addarGuments ("-no-sandbox"); WebDriver Driver = new ChromedRiver (ChromeOptions); conductor.Get ("https: // google.com "); hilo.dormir (1000); if (controlador.getPageSource ().contiene ("me siento afortunado")) sistema.afuera.println ("pase"); else sistema.afuera.println ("Fail"); conductor.abandonar(); |
Puede cambiar la URL "https: // google.com ”con cualquier otra URL de su elección, luego también cambie la cadena de búsqueda como" Me siento afortunado "usado en el programa Java anterior. Guarde su programa Java y ejecútelo. Primero, debe establecer la variable de entorno Java ClassPath, incluida la selenio-server-sandalone.frasco y testng-6.8.7.frasco. Luego compile el programa Java y ejecutarlo.
Exportar classpath = ".: selenio-server-sandalone.JAR: Testng-6.8.7.frasco"
Javac Tecadmineniumtest.Java
Java Tecadmineniumtest
Verá los resultados a continuación. Si se encuentra la cadena de búsqueda definida, recibirá el mensaje "Pase" y si la cadena no se encuentra en la página web, recibirá el mensaje "Fail" en la pantalla.