Tutorial de selenium Python

Selenium es una poderosa herramienta para controlar los navegadores web a través de programas y realizar la automatización del navegador. Es funcional para todos los navegadores, funciona en los principales sistemas operativos y sus scripts están escritos en varios lenguajes, es decir , Python , Java , C# , etc. Trabajaremos con Python. Selenium Tutorial cubre todos los temas, como: WebDriver, WebElement, Unit Testing con selenium. Este tutorial de Python Selenium cubre Selenium desde lo básico hasta los usos avanzados y profesionales.

Selenium-Python-Tutorial

¿Por qué aprender Selenium Python?

  • Código abierto y portátil : Selenium es un marco de prueba web portátil y de código abierto.
  • Combinación de herramienta y DSL – Selenium es una combinación de herramientas y DSL (Domain Specific Language) para realizar varios tipos de pruebas.
  • Más fácil de entender e implementar : los comandos de Selenium se clasifican en diferentes clases, lo que facilita su comprensión e implementación.
  • Menos carga y estrés para los evaluadores : como se mencionó anteriormente, la cantidad de tiempo requerida para probar escenarios de prueba repetidos en todas y cada una de las nuevas versiones se reduce a cero, casi. Por lo tanto, la carga del probador se reduce.
  • Reducción de costos para los clientes comerciales : la empresa debe pagar a los probadores su salario, que se ahorra utilizando la herramienta de prueba de automatización. La automatización no solo ahorra tiempo, sino que también genera beneficios económicos para la empresa.
Conceptos básicos de selenium

Conceptos básicos de Selenium Python

Estrategias de localización

Murga

Strings de acción

Avanzado en Selenium Python –

Ejemplos de proyectos

Selenium WebDriver


Selenium Webdriver es el padre de todos los métodos y clases utilizados en Selenium Python. Es la fuerza impulsora de Selenium que nos permite realizar varias operaciones en múltiples elementos en una página web. Driver tiene varios métodos y atributos que se pueden usar para automatizar las pruebas en Selenium Python. Para verificar cómo usar webdriver, visite –
Controlador web en Selenium Python
. Varios métodos que se pueden usar en selenium Python son:

Método Descripción
agregar_cookie Agrega una cookie a su sesión actual.
espalda Retrocede un paso en el historial del navegador.
cerca Cierra la ventana actual.
crear_elemento_web Crea un elemento web con el element_id especificado.
eliminar_todas_las_cookies Eliminar todas las cookies en el ámbito de la sesión.
eliminar_cookie Elimina una sola cookie con el nombre dado.
ejecutar_async_script Ejecuta JavaScript de forma asíncrona en la ventana/marco actual.
ejecutar_script Sincrónicamente ejecuta JavaScript en la ventana/marco actual.
delantero Avanza un paso en el historial del navegador.
ventana_de_pantalla_completa Invoca la operación de «pantalla completa» específica del administrador de ventanas
obtener_cookie Obtenga una sola cookie por nombre. Devuelve la cookie si se encuentra, Ninguna si no.
obtener_cookies Devuelve un conjunto de diccionarios, correspondientes a las cookies visibles en la sesión actual.
get_log Obtiene el registro para un tipo de registro dado
get_screenshot_as_base64 Obtiene la captura de pantalla de la ventana actual como una string codificada en base64 que es útil en imágenes incrustadas en HTML.
obtener_captura_de_pantalla_como_archivo Guarda una captura de pantalla de la ventana actual en un archivo de imagen PNG.
get_screenshot_as_png Obtiene la captura de pantalla de la ventana actual como datos binarios.
get_window_position Obtiene la posición x, y de la ventana actual.
get_window_rect Obtiene las coordenadas x, y de la ventana, así como la altura y el ancho de la ventana actual.
get_window_size Obtiene el ancho y el alto de la ventana actual.
implícitamente_esperar Establece un tiempo de espera fijo para esperar implícitamente a que se encuentre un elemento,
maximizar_ventana Maximiza la ventana actual que usa webdriver
minimizar_ventana Invoca la operación ‘minimizar’ específica del administrador de ventanas
abandonar Sale del controlador y cierra todas las ventanas asociadas.
actualizar Actualiza la página actual.
establecer_pagina_cargar_tiempo de espera Establezca la cantidad de tiempo de espera para que se complete la carga de una página antes de arrojar un error.
establecer_script_tiempo de espera Establezca la cantidad de tiempo que el script debe esperar durante una llamada de execute_async_script antes de generar un error.
establecer_ventana_posición Establece la posición x, y de la ventana actual. (ventana.moveTo)
establecer_ventana_rect Establece las coordenadas x, y de la ventana, así como la altura y el ancho de la ventana actual.
URL_actual Obtiene la URL de la página actual.
identificador_de_la_ventana_actual Devuelve el identificador de la ventana actual.
fuente de la página Obtiene la fuente de la página actual.
título Devuelve el título de la página actual.

Elemento web de selenium

Un elemento puede ser una etiqueta, propiedad o cualquier cosa, es una instancia de clase
selenium.webdriver.remote.webelement.WebElement
. Después de encontrar un elemento en la pantalla usando Selenium, es posible que desee hacer clic en él o buscar subelementos, etc. Selenium proporciona métodos en torno a este WebElement de Selenium. Para ver cómo usar el objeto del elemento en Selenium, visite –
Elemento web en Selenium Python
. A continuación se analizan varios métodos que se pueden usar con un elemento en Selenium Python:

Métodos de elementos Descripción
es_seleccionado() El método is_selected se utiliza para verificar si el elemento está seleccionado o no. Devuelve un valor booleano True o False.
se visualiza() El método is_displayed se usa para verificar si el elemento es visible para el usuario o no. Devuelve un valor booleano True o False.
está habilitado() El método is_enabled se usa para verificar si el elemento está habilitado o no. Devuelve un valor booleano True o False.
obtener_propiedad() El método get_property se usa para obtener las propiedades de un elemento, como obtener la propiedad text_length de la etiqueta de anclaje.
obtener_atributo() El método get_attribute se usa para obtener atributos de un elemento, como obtener el atributo href de la etiqueta de anclaje.
enviar_claves() El método send_keys se usa para enviar texto a cualquier campo, como el campo de entrada de un formulario o incluso para anclar el párrafo de la etiqueta, etc.
hacer clic() El método de clic se utiliza para hacer clic en cualquier elemento, como una etiqueta de anclaje, un enlace, etc.
clear() El método clear se usa para borrar el texto de cualquier campo, como el campo de entrada de un formulario o incluso para anclar el párrafo de la etiqueta, etc.
captura de pantalla() El método de captura de pantalla se utiliza para guardar una captura de pantalla del elemento actual en un archivo PNG.
enviar() El método de envío se utiliza para enviar un formulario después de haber enviado datos a un formulario.
valor_de_la_propiedad_css() El método value_of_css_property se usa para obtener el valor de una propiedad css para un elemento.
ubicación El método de ubicación se utiliza para obtener la ubicación del elemento en el lienzo renderizable.
captura de pantalla_as_png El método screenshot_as_png se utiliza para obtener la captura de pantalla del elemento actual como datos binarios.
padre El método principal se usa para obtener una referencia interna a la instancia de WebDriver desde la que se encontró este elemento.
Talla El método de tamaño se utiliza para obtener el tamaño del elemento actual.
etiqueta_nombre El método tag_name se utiliza para obtener el nombre de la etiqueta a la que se refiere.
texto El método de texto se utiliza para obtener el texto del elemento actual.
rectificar El método rect se usa para obtener un diccionario con el tamaño y la ubicación del elemento.
captura de pantalla_como_base64 El método screenshot_as_base64 se usa para obtener la captura de pantalla del elemento actual como una string codificada en base64.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *