Exploremos uno a uno cómo funcionan los componentes de Selenium:

     

    Selenium WebDriver

     

    También conocido como Selenium 2.0, WebDriver ejecuta scripts de prueba a través de controladores específicos del navegador. Consiste en:

     

    • API: Interfaz de programación de aplicaciones. Transfiere los scripts de prueba que escribe en Ruby, Java, Python o C# a Selenese (el propio lenguaje de scripts de Selenium), a través de enlaces.
    • Biblioteca: Aloja la API y los enlaces específicos del idioma. Aunque existen muchos enlaces de terceros para admitir diferentes lenguajes de programación, los enlaces principales del lado del cliente admitidos por el proyecto principal son: Selenium Java (como archivos jar de Selenium), Selenium Ruby, Selenium dotnet (o Selenium C#, disponible como .dll archivos), Selenium Python y Selenium JavaScript (Nodo).
    • Conductor: Módulo ejecutable que abre una instancia del navegador y ejecuta el script de prueba. Específico del navegador: por ejemplo, Google desarrolla y mantiene Chromedriver para Selenium para admitir la automatización en Chromium/Chrome.
    • Estructura: Compatibilidad con bibliotecas para la integración con marcos de prueba de lenguaje natural o de programación, como Selenium con Cucumber o Selenium con TestNG.

     

    Selenium Grid

     

    El componente Grid ayuda al usuario a minimizar el tiempo de ejecución al ser capaz de ejecutar varios scripts a la vez en una cantidad ilimitada de dispositivos remotos. A este proceso se le conoce como prueba paralela. 

     

    Selenium Grid es también visto como un servidor inteligente que ayuda a enrutar los comandos de prueba e instancias de navegador en todos los dispositivos remotos. Se vale de dos componentes principales: el servidor y el dispositivo remoto.

     

    Selenium IDE

     

    Es un complemento disponible en Chrome y Firefox que le permite al usuario registrar interacciones “naturales” en el navegador y poder generar un código en distintos lenguajes de programación, por ejemplo puede generarlo en C#, Java, Python y Ruby, además de el propio lenguaje de secuencias de comando de Selenium: Selenese.

     

    También sirve para que los probadores habiliten “grabación” dentro del IDE y puedan reproducir el escenario de prueba en el navegador. Tiene como defecto que el código generado suele ser muy complicado para utilizarse en scripts para pruebas automáticas. 

     

    rootstack