Selenium Python Tutorial con ejemplo de WebDriver

Selenium con Python

Selenium apoya Python y por lo tanto puede ser utilizado como Selenium Controlador web con Python para las pruebas.

  • Python Es fรกcil en comparaciรณn con otros lenguajes de programaciรณn y tiene mucho menos detalle.
  • El Python Las API le permiten conectarse con el navegador a travรฉs de Selenium.
  • Selenium envรญa el estรกndar Python comandos a diferentes navegadores, a pesar de la variaciรณn en el diseรฑo de su navegador.

Tu puedes correr Selenium con Python guiones para Firefox, Chrome, IE, etc. en diferentes OperaSistemas de tinciรณn.

ยฟQuรฉ es Python?

Python es un lenguaje de programaciรณn orientado a objetos de alto nivel. Estรก diseรฑado de manera fรกcil de usar. Python Utiliza palabras clave simples en inglรฉs, que son fรกciles de interpretar. Tiene menos complicaciones de sintaxis que cualquier otro. lenguajes de programaciรณn.

Vea algunos de los ejemplos en la siguiente tabla.

Palabra clave Significado Uso
elif Si no Si no
mรกs otro si: X; elif: Y; mรกs: J
excepto Haga esto, si ocurre una excepciรณn, excepto ValueError, a: imprime un
ejecutivo Ejecutar cadena como Python ejecutivo 'imprimir "ยกhola mundo!"'

ยฟQuรฉ es Selenium?

Selenium es una herramienta para probar su aplicaciรณn web. Puedes hacer esto de varias maneras, por ejemplo

  • Permรญtale tocar los botones.
  • Ingresar contenido en estructuras
  • Hojee su sitio para comprobar si todo estรก "OK", etc.

Cรณmo instalar y configurar PyDev in Eclipse

PyDev is Python entorno de desarrollo para Eclipse.

Paso 1) Tengo que Eclipse Mercado. Ayuda > Instalar nuevo software

Instalar y configurar PyDev in Eclipse

El siguiente paso es instalar โ€œpydev IDEโ€ para eclipse.

Paso 2) En este paso,

  1. Busque โ€œhttp://pydev.org/updatesโ€ en Trabajar con y luego
  2. Seleccione todos los elementos enumerados y haga clic en Siguiente dos veces
  3. Acepte el Acuerdo de licencia y haga clic en Finalizar.

Instalar y configurar PyDev in Eclipse

Paso 3) Es posible que encuentre una advertencia de seguridad. Haga clic en "Instalar de todos modos".

Instalar y configurar PyDev in Eclipse

Paso 4) Ahora, En este paso establecerรกs preferencias. Con la ayuda de la opciรณn de preferencia, puede usar Python segรบn la necesidad del proyecto.

Vaya a Ventana> Preferencias> PyDev > Intรฉrprete > Python Interprete.

Instalar y configurar PyDev in Eclipse

Establezcamos el valor predeterminado Python Intรฉrprete. Es como si necesitaras configurar el compilador de Java para ejecutar un Java Cรณdigo. Para cambiar el nombre del intรฉrprete, haga clic en el botรณn Buscar python/pypy exe.

Instalar y configurar PyDev in Eclipse

Paso 5) En este paso, proporcione el โ€œnombre del intรฉrpreteโ€ y la ruta del archivo โ€œexeโ€ de Python.

  1. Haga clic en 'Explorar' y busque python.exe donde lo instalรณ Python.
  2. Haga clic en el botรณn "Aceptar".
  3. Seleccione todas las carpetas y haga clic en Aceptar.
  4. Haga clic en "Aplicar y cerrar".

Instalar y configurar PyDev in Eclipse

Paso 6) Hacer un nuevo proyecto en Python. En este paso,

  1. Haga clic derecho PyDev Explorador de paquetes > Nuevo.
  2. Seleccione la opciรณn otros.

Instalar y configurar PyDev in Eclipse

  1. Selecciona "PyDev > PyDev Proyecto".
  2. Presione el botรณn 'Siguiente'.

Instalar y configurar PyDev in Eclipse

  1. Nombra tu proyecto
  2. Haga clic en "Finalizar".

Instalar y configurar PyDev in Eclipse

Puedes ver lo nuevo Python (PyDev) se crea el proyecto.

Paso 7) En este paso,

Despuรฉs de crear 'PyDev Proyecto', crearรกs un nuevo Python Pack

  1. Haga clic derecho en Proyecto > Nuevo > PyDev Paquete.
  2. Asigne un nombre a su paquete y haga clic en Finalizar.

Instalar y configurar PyDev in Eclipse

Instalar y configurar PyDev in Eclipse

Paso 8) Si ve la siguiente captura de pantalla, se crea un nuevo paquete.

Instalar y configurar PyDev in Eclipse

Despuรฉs de crear un nuevo paquete, el siguiente paso es crearPyDev Mรณdulo. El mรณdulo contiene algunos Python archivos para la inicializaciรณn. Estos archivos o funciones del mรณdulo se pueden importar a otro mรณdulo. Por lo tanto, no serรก necesario volver a escribir el programa.

Paso 9) Crear un nuevo PyDev mรณdulo. Haga clic derecho en paquete > Nuevo > PyDev .

Instalar y configurar PyDev in Eclipse

Asigne un nombre a su mรณdulo y haga clic en "Finalizar".

Instalar y configurar PyDev in Eclipse

Seleccione Plantilla vacรญa y haga clic en "Aceptar".

Instalar y configurar PyDev in Eclipse

Paso 10) Escribe tu cรณdigo para Selenium con Python como se muestra a continuaciรณn

Instalar y configurar PyDev in Eclipse

Cรณmo crear scripts de prueba en Selenium con Python

En este Selenium Controlador web con Python Por ejemplo, automatizamos la โ€œpรกgina de inicio de sesiรณn de Facebookโ€ usando el Firefox conductor.

Selenium con Python Ejemplo 1: iniciar sesiรณn en Facebook

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
user_name = "YOUR EMAILID"
password = "YOUR PASSWORD"
driver = webdriver.Firefox()
driver.get("https://www.facebook.com")
element = driver.find_element_by_id("email")
element.send_keys(user_name)
element = driver.find_element_by_id("pass")
element.send_keys(password)
element.send_keys(Keys.RETURN)
element.close()

Instantรกnea del Cรณdigo

Crear scripts de prueba en Selenium  con  Python

Explicaciรณn del cรณdigo

  • Lรญnea de cรณdigo 1: Desde el mรณdulo de selenio, importe webdriver
  • Lรญnea de cรณdigo 2:Desde el mรณdulo Selenium, importar claves
  • Lรญnea de cรณdigo 3: Usuario es una variable que usaremos para almacenar valores de nombre de usuario.
  • Lรญnea de cรณdigo 4: La variable โ€œcontraseรฑaโ€ se utilizarรก para almacenar los valores de la contraseรฑa.
  • Lรญnea de cรณdigo 5:En esta lรญnea, estamos inicializando โ€œFuegoFoxโ€haciendo de ello un objeto.
  • Lรญnea de cรณdigo 6: El โ€œmรฉtodo driver.getโ€ navegarรก a una pรกgina proporcionada por la URL. WebDriver esperarรก hasta que la pรกgina se haya cargado por completo (es decir, que la ocasiรณn de "carga" haya desaparecido), antes de devolver el control a su prueba o secuencia de comandos.
  • Lรญnea de cรณdigo 7:En esta lรญnea encontramos el elemento del cuadro de texto donde se debe escribir el โ€œemailโ€.
  • Lรญnea de cรณdigo 8:Ahora estamos enviando los valores a la secciรณn de correo electrรณnico.
  • Lรญnea de cรณdigo 9: Lo mismo para la contraseรฑa
  • Lรญnea de cรณdigo 10: Envรญo de valores a la secciรณn de contraseรฑa
  • Lรญnea de cรณdigo 11: element.send_keys(Keys.RETURN) se usa para presionar enter despuรฉs de insertar los valores
  • Lรญnea de cรณdigo 12: Cerca

SALIDA

Se ingresan los valores del nombre de usuario โ€œguru99โ€ y contraseรฑa.

Crear scripts de prueba en Selenium  con  Python

La pรกgina de Facebook se iniciarรก con correo electrรณnico y contraseรฑa. Pรกgina abierta (ver imagen a continuaciรณn)

Crear scripts de prueba en Selenium  con  Python

Selenium con Python EJEMPLO 2: Inicie sesiรณn en Facebook y verifique el tรญtulo

En este ejemplo,

  • Abriremos una pรกgina de inicio de sesiรณn.
  • Complete el campo requerido โ€œnombre de usuarioโ€ y โ€œcontraseรฑaโ€.
  • Comprobar tรญtulo de la pรกgina
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
# Step 1) Open Firefox 
browser = webdriver.Firefox()
# Step 2) Navigate to Facebook
browser.get("http://www.facebook.com")
# Step 3) Search & Enter the Email or Phone field & Enter Password
username = browser.find_element_by_id("email")
password = browser.find_element_by_id("pass")
submit   = browser.find_element_by_id("loginbutton")
username.send_keys("YOUR EMAILID")
password.send_keys("YOUR PASSWORD")
# Step 4) Click Login
submit.click()
wait = WebDriverWait( browser, 5 )
page_title = browser.title
assert page_title == "Facebook"

Instantรกnea del cรณdigo

Crear scripts de prueba en Selenium  con  Python

Explicaciรณn del cรณdigo:

  • Lรญnea de cรณdigo 1-2: Importar paquetes de selenio
  • Lรญnea de cรณdigo 4: Inicializar Firefox creando un objeto
  • Lรญnea de cรณdigo 6: Obtener pรกgina de inicio de sesiรณn (Facebook)
  • Lรญnea de cรณdigo 8-10: Obtener nombre de usuario, cuadros de entrada de contraseรฑa y botรณn de envรญo.
  • Lรญnea de cรณdigo 11-12: Introduzca datos en los cuadros de entrada de nombre de usuario y contraseรฑa
  • Lรญnea de cรณdigo 14: Haga clic en el botรณn "Enviar"
  • Lรญnea de cรณdigo 15: Cree un objeto de espera con un tiempo de espera de 5 segundos.
  • Lรญnea de cรณdigo 16: Capturando el tรญtulo del Objeto โ€œnavegadorโ€.
  • Lรญnea de cรณdigo 17: Probando la cadena de tรญtulo capturada con "Facebook"

Por que elegir Python mรกs del Java in Selenium

Pocos puntos que favorecen Python mรกs del Java para usar con Selenium es,

  1. Java Los programas tienden a ejecutarse mรกs lento en comparaciรณn con Python
  2. Java utiliza llaves tradicionales para iniciar y finalizar bloques, mientras que Python utiliza sangrรญa.
  3. Java emplea escritura estรกtica, mientras Python se escribe dinรกmicamente.
  4. Python es mรกs simple y compacto en comparaciรณn con Java.

Resumen

  • Selenium es una web de cรณdigo abierto herramienta de automatizaciรณn.
  • Python El lenguaje se utiliza con Selenium para las pruebas. Es mucho menos detallado y fรกcil de usar que cualquier otro lenguaje de programaciรณn.
  • El Python Las API le permiten conectarse con el navegador a travรฉs de Selenium
  • Selenium puede enviar el estรกndar Python comandos a diferentes navegadores, a pesar de la variaciรณn en el diseรฑo de su navegador.

Resumir este post con: