Selenium es un marco portátil para probar aplicaciones web. Selenium proporciona una herramienta de reproducción para crear pruebas funcionales sin necesidad de aprender un lenguaje de programación de pruebas. Antes de seguir adelante Consulte esta página si no ha instalado Selenium . Este artículo gira en torno a los localizadores en Selenium y varias estrategias.
Contenido
- controlador web
- Obtener la fuente de una página web/URL
- Ubicar elementos por
- Ingresar entrada en un campo de entrada usando Selenium Script
- Localización del botón Enviar
- Código completo para demostrar el inicio de sesión en Facebook
controlador web
Selenium WebDriver maneja un navegador de forma nativa, como lo haría un usuario real, ya sea localmente o en máquinas remotas. Para iniciar un navegador web, el módulo python selenium necesita webdriver. Uno puede descargarlo desde aquí para el navegador Chrome
# Python program to demonstrate # Webdriver For Firefox from selenium import webdriver driver = webdriver.Firefox() driver.get("https://mbasic.facebook.com")
Cómo usar otro controlador web
# Firefox driver = webdriver.Firefox() # Google Chrome driver = webdriver.Chrome()
Obtener la fuente de una página web/URL
Al usar esto, se puede obtener la fuente/código de la página completa de la URL/página web actualmente abierta.
# Python program Continued # Webdriver For Firefox from selenium import webdriver driver = webdriver.Chrome() driver.get("https://mbasic.facebook.com") html = driver.page_source # Getting Source of Current URL / Web-Page Loaded print(html) # End
Producción:
Es necesario revisar el código fuente de la página para crear un script automatizado de Selenium
Por ejemplo :-
Localización de elementos por: –
1. Identificación
Los elementos HTML tienen algún atributo «id» que se puede usar para localizar esos elementos.
Por ejemplo: – Encontrar el cuadro de entrada para el campo de correo electrónico
# Python program Continued # Finding Input Box For Email Field # Go Through the Screen Shot Above or Page Source driver.find_element_by_id("m_login_email") # End
2. Nombre
Elementos HTML Tienen un atributo «nombre» asociado con ellos que se puede usar para localizar esos elementos.
Por ejemplo: – Encontrar el cuadro de entrada para el campo de contraseña
# Python program Continued # Finding Input Box For Password Field # Go Through the Screen Shot Above or Page Source driver.find_element_by_name("pass") # End
3. Enlace de texto
Los elementos HTML que en realidad son un enlace a otra página se pueden ubicar utilizando ese texto de enlace en particular.
Por ejemplo: – Encontrar el campo de enlace de contraseña olvidada
# Python program Continued # Finding Forgotten Password Link Field driver.find_element_by_link_text("Forgotten password?") # End
4. Texto de enlace parcial
Los elementos HTML que en realidad son un enlace a otra página se pueden ubicar utilizando ese texto de enlace parcial en particular.
Por ejemplo: – Encontrar el campo de enlace de contraseña olvidada
# Python program Continued # Finding Forgotten Password Link Field driver.find_element_by_partial_link_text("Forgotten password?") # End
5. XPath
Los elementos HTML se pueden encontrar fácilmente usando este
ejemplo: – Buscar campo de entrada de correo electrónico y contraseña
# Python program Continued # Creating a Reference of Form For Finding Email and Password # Reference for Form Finding form = driver.find_element_by_xpath("//form[@id ='login_form']") # Email email = form.find_element_by_name("email") # Password password = form.find_element_by_name("pass") # End
6. Nombre de la etiqueta
Los elementos HTML se pueden encontrar fácilmente usando el nombre de la etiqueta
, por ejemplo: – Encontrar elementos usando el nombre de la etiqueta como Título, Encabezado, Cuerpo, Html, a, div, etc.
# Python program Continued # Finding Title of Facebook Login Page # Output will be "Facebook - log in or sign up" title = driver.find_element_by_tag_name("title") print(title) # End
7. Selector de CSS
Los elementos HTML se pueden encontrar fácilmente usando CSS
, por ejemplo: – Encontrar elementos usando Clase, estilo, etc.
# Python program Continued # Finding Password Input Field Using Class Name "bl bm bo bp" password = driver.find_element_by_css_selector('input.bl.bm.bo.bp') # End
8. Nombre de la clase
Los elementos HTML se pueden encontrar fácilmente usando el nombre de la clase,
por ejemplo: – Encontrar elementos usando el nombre de la clase.
# Python program Continued # Finding Password Input Field Using Class Name "bl bm bo bp" password = driver.find_element_by_class_name('bl bm bo bp') # End
9. Ingresar entrada en un campo de entrada usando Selenium Script
Se usa para insertar entrada en el campo de entrada usando la función incorporada send_keys.
# Python program Continued # Creating a Reference of Form For Finding Email and Password # Reference for Form Finding form = driver.find_element_by_xpath("//form[@id ='login_form']") email = form.find_element_by_name("email") password = form.find_element_by_name("pass") # Inserting("abc@gmail.com") in the Email Input Field email.send_keys("singh.swaraj1999@gmail.com") # Inserting("Your Facebook Password") in the Password Input Field password.send_keys("Your Facebook Password") # End
10. Localización del botón Enviar
Se usa para ubicar el botón Enviar que se usa para enviar un formulario
# Python program Continued # Creating a Reference of Form For Finding Email and Password form = driver.find_element_by_xpath("//form[@id ='login_form']") email = form.find_element_by_name("email") password = form.find_element_by_name("pass") email.send_keys("singh.swaraj1999@gmail.com") password.send_keys("Your Facebook Password") # Locating Submit Button submit_button = driver.find_element_by_xpath("//input[@type ='submit']") submit_button.click() # Button Click # End
Producción:-
11. Código completo para demostrar el inicio de sesión en Facebook
# Python program to demonstrate Facebook Login from selenium import webdriver driver = webdriver.Firefox() driver.get("https://mbasic.facebook.com") # Creating a Reference of Form For Finding Email and Password form = driver.find_element_by_xpath("//form[@id ='login_form']") email = form.find_element_by_name("email") password = form.find_element_by_name("pass") email.send_keys("singh.swaraj1999@gmail.com") password.send_keys("Your Facebook Password") submit_button = driver.find_element_by_xpath("//input[@type ='submit']") submit_button.click() # Error Password in Output # Because i had not used my real password here # End
Producción:-
Publicación traducida automáticamente
Artículo escrito por singhswaraj1999 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA