Pruebas de navegador automatizadas con Edge y Selenium en Python

Las pruebas entre navegadores son obligatorias en la industria del software. Todos sabemos que hay muchos navegadores disponibles como Firefox, Chrome, Edge, Opera, etc. En lugar de escribir un código separado para todos y cada uno de los navegadores, siempre es un enfoque decente ir hacia las pruebas automatizadas. Veamos cómo hacerlo usando Selenium para el navegador Edge en Python. Aquí Edge WebDriver se usa para ejecutar nuestros scripts de prueba de automatización de Selenium en el navegador Edge.

Requisitos:

Para realizar la automatización del navegador usando Edge y Selenium en Python, debemos realizar los siguientes pasos:

  • Navegador Edge: el navegador Microsoft Edge se puede descargar desde https://www.microsoft.com/en-us/edge . Si ya está instalado, podemos obtener la versión existente de edge usando edge://version/
  • Selenium framework: Selenium es una poderosa herramienta para controlar un navegador web a través del programa. Es funcional para todos los navegadores, funciona en todos los principales sistemas operativos. Se puede instalar usando el siguiente comando:
pip install selenium
  • Edge WebDriver: Selenium Edge Webdriver se puede descargar desde esta URL . Las pruebas automáticas se realizarán en el navegador Edge con este controlador. Descargue el controlador web edge según el sistema operativo, descomprima el archivo y obtenga msedgedriver.exe.
  • Herramientas de Selenium para Microsoft Edge: este módulo tiene las funciones necesarias para la prueba automatizada del navegador, se puede instalar con el siguiente comando:
pip install msedge-selenium-tools selenium==3.141

A continuación se muestra un programa para ejecutar un simple script de prueba de navegador automatizado:

Python3

# import required modules
from selenium import webdriver
  
  
# Driver Code
if __name__ == '__main__':
  
    # create object
    edgeBrowser = webdriver.Edge(r"msedgedriver.exe")
  
    # open browser and navigate to facebook
    edgeBrowser.get('https://www.facebook.com')

Producción:

página de facebook de apertura de borde

Al ejecutar el script, podemos ver que el navegador Edge ha abierto la página de Facebook como se muestra en la imagen. Puede abrir cualquier página web válida y automáticamente abrirá la página web mencionada en el navegador de borde.

Enfoque paso a paso:

  • Se abre el navegador Edge.
  • Se maximiza.
  • Abre una página web (aquí www.lambdatest.com) .
  • Toma el correo electrónico del usuario como gfg@lambdatest.com.
  • Obtenga el botón Enviar para hacer clic, que no es más que el botón Iniciar prueba gratuita en el formulario y navegará a la página siguiente con la URL como https://accounts.lambdatest.com/register?email=gfg@lambdatest.com.

Si queremos saber el id de todos y cada uno de los componentes de una página web, podemos obtenerlo mediante Ver código fuente de la página o también inspeccionando la sección correspondiente.

Implementación:

Python3

# Import required module
from selenium.webdriver.opera.options import Options
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import TimeoutException
from selenium import webdriver
from time import sleep
  
  
# Driver Code
if __name__ == '__main__':
      
    # Instantiate the webdriver with the executable location of MS Edge
    # Provide the full location of the path to recognise correctly
    edgeBrowser = webdriver.Edge(r"msedgedriver.exe")
      
    # This is the step for maximizing browser window
    edgeBrowser.maximize_window()
      
    # Browser will get navigated to the given URL
    edgeBrowser.get('https://www.lambdatest.com')
    try:
        # We need to insert Email in order to proceed further. 
        # So it is given by using 'useremail'
        sampleElement = WebDriverWait(browser, 10).until(
            EC.presence_of_element_located((By.ID, 'useremail')))
          
        # We can give a valid email address and since 
        # this page carries the email id alone, it just 
        # appends the email id at the end
        sampleElement.send_keys("gfg@lambdatest.com")
          
        # A click is happening to move to next page
        sampleElement.click()
          
        # A Submit button is searched to click and start 
        # free testing. Actually "testing_form" is the id 
        # of the form, which needs to get tested
        sampleElement2 = WebDriverWait(browser, 10).until(
            EC.element_to_be_clickable((By.CSS_SELECTOR, 
                                        "#testing_form > div")))
          
        # Starting free testing on LambdaTest
        sampleElement2.click()
          
        # Just to show the set of actions happening, we can 
        # give sleep, U can change the values as per requirement
        sleep(20)
    except TimeoutException:
        print("Trying to find the given element but unfortunately no element is found")
    sleep(20)
    # Once all operations over, we can close browser too
    # edgeBrowser.close()

Producción:

La prueba automatizada del navegador es muy conveniente y como hay controladores disponibles para cada navegador, podemos hacer la prueba fácilmente y no se necesita trabajo manual. Incluso las pruebas automatizadas son más rápidas y pueden probar varias páginas de prueba muy rápidamente y proporcionar resultados de prueba exitosos.

Publicación traducida automáticamente

Artículo escrito por priyarajtt 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 *