Selenium es una poderosa herramienta para controlar navegadores web a través de programas y realizar la automatización del navegador. Es funcional para todos los navegadores, funciona en todos los principales sistemas operativos y sus scripts están escritos en varios idiomas, es decir Pitón , Java , C# , etc, trabajaremos con Python. El tutorial de Selenium cubre todos los temas, como WebDriver, WebElement, pruebas unitarias con selenium. Este tutorial de Python Selenium cubre Selenium desde lo básico hasta los usos avanzados y profesionales. 
¿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 términos de diferentes clases que facilitan su comprensión e implementación.
- Menos carga y estrés para los evaluadores – Como se mencionó anteriormente, la cantidad de tiempo necesaria para realizar pruebas repetidas en escenarios de prueba en todas y cada una de las nuevas compilaciones se reduce a casi cero. Por lo tanto, se reduce la carga del evaluador.
- Reducción de costes para los Clientes Empresariales – La empresa debe pagar a los evaluadores 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 de costos para la empresa.
Aprender Selenium con Python abre muchas posibilidades para realizar pruebas de aplicaciones web eficientes y efectivas, particularmente cuando se combina con plataformas populares de prueba en la nube como LambdaTest.
Prueba Lambda es una plataforma de ejecución y orquestación de pruebas impulsada por IA que permite a los desarrolladores y evaluadores realizar pruebas de Selenium Python a escala en un laboratorio de pruebas remoto de más de 3000 navegadores de escritorio y sistemas operativos reales. Con Selenium Python, puede escribir scripts de prueba sólidos para automatizar las pruebas de aplicaciones web, garantizando su funcionalidad en diferentes navegadores y plataformas. Los desarrolladores y evaluadores pueden incluso ejecutar pruebas en paralelo en múltiples combinaciones, lo que les ayuda a enviar construcciones de calidad a la velocidad de la luz.
Conceptos básicos del selenio- Conceptos básicos del selenio
- Componentes del selenio
- Aplicaciones y usos
- Características
- Limitaciones
Conceptos básicos de Selenio Python
- Introducción e instalación de Selenium Python
- Navegando por enlaces usando el método get
- Interactuando con la página web
- Localización de elementos individuales
- Localizar múltiples elementos
- Estrategias de localización: Selenium Python
- Escribir pruebas usando Selenium Python
Estrategias de localización
cuerdas en c
- Localización de elementos individuales –- buscar_elemento_por_id()
- buscar_elemento_por_nombre()
- buscar_elemento_por_xpath()
- find_element_by_link_text()
- find_element_by_partial_link_text()
- buscar_elemento_por_nombre_etiqueta()
- buscar_elemento_por_nombre_clase()
- find_element_by_css_selector()
 
- Localización de múltiples elementos –- buscar_elementos_por_nombre()
- buscar_elementos_por_xpath()
- buscar_elementos_por_enlace_text()
- find_element_by_partial_link_text()
- buscar_elementos_por_nombre_etiqueta()
- buscar_elementos_por_nombre_clase()
- buscar_elementos_por_css_selector()
 
Murga
- esperas explícitas
- Esperas implícitas
el mejor auto del mundo
- Conceptos básicos de las cadenas de acción
- hacer clic
- hacer clic y mantener presionado
- clic_contexto
- haga doble clic
- arrastrar y soltar
- tecla_abajo
- tecla Arriba
- mover_por_desplazamiento
- mover_a_elemento
- mover_a_elemento_con_desplazamiento
- liberar
- restablecer_acciones
- enviar_claves
Avanzado en Selenium Python –
- Manejo de excepciones: Selenium Python
- Teclas especiales en Selenium Python
- ¿Cómo manejar mensajes de alerta en Selenium Python?
- Agregar y eliminar cookies en Selenium Python
- ¿Cómo avanzar y retroceder en la Historia usando Selenium Python?
- Teclas especiales en Selenium Python
- Afirmación en Selenium WebDriver usando TestNg
- Trucos de selenio y pitón
- Modelo de objetos de página (POM)
Ejemplos de proyectos
- ¡Whatsapp usando Python!
- Automatización del navegador con Selenium
- Iniciar sesión en Facebook usando Python
- Automatización de publicaciones de feliz cumpleaños en Facebook usando Selenium
- Cómo acceder a la ventana emergente de inicio de sesión en Selenium usando Python
- Bombardero SMS usando selenio
Controlador web de selenio
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 diversas operaciones en múltiples elementos de una página web. El controlador tiene varios métodos y atributos que se pueden utilizar para automatizar las pruebas en Selenium Python. Para comprobar cómo utilizar webdriver, visite –
Elemento web en Selenium Python
. Varios métodos que se pueden utilizar en Selenium Python son:
| Método | Descripción | 
|---|---|
| agregar_cookie | Agrega una cookie a su sesión actual. | 
| atrás | 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 | Elimine todas las cookies en el ámbito de la sesión. | 
| eliminar_cookie | Elimina una sola cookie con el nombre de pila. | 
| ejecutar_async_script | Ejecuta JavaScript de forma asincrónica en la ventana/marco actual. | 
| ejecutar_script | Ejecuta JavaScript de forma sincrónica en la ventana/marco actual. | 
| adelante | Va un paso adelante en el historial del navegador. | 
| ventana_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 en caso contrario. | 
| obtener_cookies | Devuelve un conjunto de diccionarios, correspondientes a las cookies visibles en la sesión actual. | 
| obtener_log | Obtiene el registro para un tipo de registro determinado | 
| get_screenshot_as_base64 | Obtiene la captura de pantalla de la ventana actual como una cadena codificada en base64 que es útil en imágenes incrustadas en HTML. | 
| get_screenshot_as_file | 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 el alto 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 está usando 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. | 
| set_page_load_timeout | Establezca la cantidad de tiempo que se debe esperar a que se complete la carga de una página antes de generar un error. | 
| set_script_timeout | Establezca la cantidad de tiempo que el script debe esperar durante una llamada a ejecutar_async_script antes de generar un error. | 
| establecer_posición_ventana | Establece la posición x, y de la ventana actual. (ventana.moveTo) | 
| set_window_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_ventana_actual | Devuelve el identificador de la ventana actual. | 
| fuente de la página | Obtiene el origen de la página actual. | 
| título | Devuelve el título de la página actual. | 
Elemento web de selenio
Un elemento puede ser una etiqueta, propiedad o cualquier cosa, es una instancia de clase
selenio.webdriver.remote.webelement.WebElement
número java a cadena
. 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 elemento en selenio, visite –
. A continuación se analizan varios métodos que se pueden utilizar con un elemento en Selenium Python:
| Métodos de elementos | Descripción | 
|---|---|
| está_seleccionado() | El método is_selected se utiliza para comprobar si el elemento está seleccionado o no. Devuelve un valor booleano Verdadero o Falso. | 
| se visualiza() | El método is_displayed se utiliza para comprobar si el elemento es visible para el usuario o no. Devuelve un valor booleano Verdadero o Falso. | 
| está habilitado() | El método is_enabled se utiliza para comprobar si el elemento está habilitado o no. Devuelve un valor booleano Verdadero o Falso. | 
| obtener_propiedad() | El método get_property se utiliza 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 utiliza para obtener atributos de un elemento, como obtener el atributo href de la etiqueta de anclaje. | 
| enviar_claves() | El método send_keys se utiliza para enviar texto a cualquier campo, como el campo de entrada de un formulario o incluso para anclar un párrafo de 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. | 
| claro() | El método clear se utiliza para borrar el texto de cualquier campo, como el campo de entrada de un formulario o incluso para anclar un párrafo de 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. | 
| entregar() | El método de envío se utiliza para enviar un formulario después de haber enviado datos a un formulario. | 
| valor_de_css_property() | El método value_of_css_property se utiliza 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_como_png | El método capture_as_png se utiliza para obtener la captura de pantalla del elemento actual como datos binarios. | 
| padre | El método principal se utiliza para obtener una referencia interna a la instancia de WebDriver desde la que se encontró este elemento. | 
| tamaño | El método de tamaño se utiliza para obtener el tamaño del elemento actual. | 
| nombre_etiqueta | 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. | 
| recto | El método rect se utiliza para obtener un diccionario con el tamaño y la ubicación del elemento. | 
| captura de pantalla_as_base64 | El método capture_as_base64 se utiliza para obtener la captura de pantalla del elemento actual como una cadena codificada en base64. | 
