Selenium Tutorial IDE

⚡ Resumen inteligente

Selenium IDE es la herramienta de grabación y reproducción del Selenium Suite, construida para prototiposping Realiza pruebas en lugar de mantener grandes conjuntos de pruebas, y sus paneles abarcan la grabación, edición, ejecución e inspección de cada comando de Selenese.

  • 🔘 Propósito: El IDE registra las acciones del navegador como comandos Selenese y las reproduce sin necesidad de programación.
  • ☑️ Alcance: Trátalo como un prototipoping Utilice la herramienta y luego exporte el script para obtener un marco de trabajo mantenible.
  • Barra de menú: El comando Archivo permite crear, abrir, guardar y exportar; el comando Editar inserta nuevos comandos y comentarios.
  • 🧪 Opciones: El cuadro de diálogo Opciones establece el tiempo de espera predeterminado, la base URL comportamiento y orden de construcción del localizador.
  • 🛠️ Editor: La vista de tabla es donde se introducen los comandos, los objetivos y los valores; la vista de código fuente muestra el mismo script como código HTML.
  • 📊 Paneles de retroalimentación: El panel de registro muestra mensajes de depuración, información, advertencia y error, mientras que el panel de referencia explica el comando seleccionado.
  • 🚀 Hoy: El IDE actual es Chrome, Firefox y una extensión de Edge que guarda los proyectos como un único archivo .side.

Selenium Tutorial del IDE que cubre sus paneles, menús y barra de herramientas.

¿Qué es Selenium IDE?

Selenium IDE (Entorno de desarrollo integrado) es la herramienta más sencilla del mundo. Selenium Suite. Es un Firefox complemento que crea pruebas muy rápidamente a través de su funcionalidad de grabación y reproducción. Esta función es similar a la de QTPSu instalación es muy sencilla y su aprendizaje, fácil.

⚠️ Una nota sobre las versiones: <font dir="auto" style="vertical-align: inherit;">las </font> Firefox El complemento que se muestra a lo largo de este artículo fue retirado. La herramienta sigue existiendo como un complemento de Chrome. Firefox y Edge extensión del navegador que mantiene la grabación y reproducción, pero reorganiza la interfaz y guarda un proyecto como un único archivo. .side Archivo. Cada pantalla y configuración original que se muestra a continuación se conserva tal como se publicó.

Por su sencillez, Selenium El IDE solo debe usarse como prototipo.ping herramienta, no una solución general para el desarrolloping y el mantenimiento de conjuntos de pruebas complejos.

Aunque podrás utilizar Selenium IDE sin conocimientos previos en programación, al menos debes estar familiarizado con HTML, JavaScripty el DOM (Modelo de Objetos del Documento) para utilizar esta herramienta en todo su potencial. Conocimiento de JavaEl script será necesario cuando lleguemos a la sección sobre el comando selenese "runScript".

Selenium IDE admite el modo de autocompletar al crear pruebas. Esta característica tiene dos propósitos:

  • Ayuda al evaluador a ingresar comandos más rápidamente.
  • Restringe al usuario la entrada de comandos no válidos.

Selenium Características del IDE

La pantalla etiquetada que aparece a continuación identifica todas las regiones a las que se hace referencia en el resto de este artículo.

Selenium Ventana IDE con la barra de menú, base URL barra, barra de herramientas, panel de casos de prueba, editor y panel de registro etiquetados

Barra de menús

Se encuentra en la parte superior del IDE. Los menús más utilizados son Archivo, Edición y Opciones.

El menú Archivo

  • Contiene opciones para crear, abrir, guardar y cerrar pruebas.
  • Las pruebas se guardan en formato HTML.
  • La opción más útil es “Exportar” porque te permite convertir tu Selenium Casos de prueba IDE en formatos de archivo que se pueden ejecutar Selenium Control remoto y WebDriver
  • La opción "EXPORTAR caso de prueba como..." exportará únicamente el caso de prueba que se encuentre abierto actualmente.
  • “Exportar conjunto de pruebas como…” exportará todos los casos de prueba del conjunto de pruebas actualmente abierto.

El menú Archivo expandido que aparece a continuación muestra ambas opciones de exportación una al lado de la otra.

Selenium El menú Archivo del IDE se ha expandido mostrando Exportar caso de prueba como y Exportar conjunto de pruebas como.

  • A partir de Selenium En IDE v1.9.1, los casos de prueba solo se pueden exportar a los siguientes formatos:
    • .cs (código fuente C#)
    • .java (Java código fuente)
    • .py (Python código fuente)
    • .rb (código fuente de Ruby)

Exportar reescribe cada fila de Selenese como una declaración en el idioma elegido, como este HTML a-Java La comparación muestra.

Caso de prueba HTML de Selenese mostrado junto al equivalente exportado Java código fuente

Nota: Selenium El control remoto fue eliminado en Selenium 3, por lo que un script RC exportado ya no se ejecuta. El IDE actual exporta código WebDriver en su lugar.

Menú Edición

  • Contiene opciones habituales como Deshacer, Rehacer, Cortar, Copiar, Pegar, Eliminar y Seleccionar todo.
  • Las dos opciones más importantes son "Insertar nuevo comando" e "Insertar nuevo comentario".

Selenium Menú Editar del IDE con Insertar nuevo comando e Insertar nuevo comentario resaltados.

El comando o comentario recién insertado se colocará encima de la línea actualmente seleccionada.

Cuadrícula del editor antes y después de insertar un nuevo comando encima de la línea seleccionada.

  • Los comandos están coloreados de negro.
  • Los comentarios están coloreados de morado.

La diferencia de color facilita la identificación de un comentario insertado en un texto largo.

Filas del editor que muestran un comando selenese negro junto a una línea de comentarios morada.

Menú de opciones

Proporciona la interfaz para configurar varios ajustes de Selenium IDE

Nos centraremos en las opciones de Opciones y Formato del portapapeles.

Submenú Formato del portapapeles que muestra todos los formatos de fragmentos de código disponibles.

Formato del portapapeles

  • El formato del portapapeles le permite copiar un comando selenese del editor y pegarlo como un fragmento de código.
  • El formato del código sigue la opción que seleccionó aquí en la lista de Formato del Portapapeles.
  • HTML es la selección predeterminada.

Por ejemplo, cuando eliges Java/JUnit 4/WebDriver como formato de portapapeles, cada comando Selenese que copie de Selenium El editor del IDE se pegará como Java código. Vea la ilustración a continuación.

Comando selenese copiado del editor y pegado como un Java Declaración de WebDriver

Selenium Cuadro de diálogo Opciones de IDE

Puedes lanzar el Selenium Cuadro de diálogo Opciones de IDE haciendo clic en Opciones > Opciones… en la barra de menú. Aunque hay muchas opciones disponibles, nos concentraremos en las pocas más importantes.

Selenium Diálogo de opciones del IDE con tiempo de espera, extensiones, base URL y ajustes de registro etiquetados

  • Valor de tiempo de espera predeterminado. Esto se refiere al momento en que Selenium Debe esperar a que aparezca o se vuelva accesible un elemento determinado antes de generar un error. El valor de tiempo de espera predeterminado es de 30000 ms.
  • Selenium Extensiones IDE. Aquí es donde especificas las extensiones que deseas usar para extender Selenium Capacidades del IDE. Puedes visitar addons.mozilla.org y use "Selenium”como palabra clave para buscar extensiones específicas.
  • Recuerda la base URL. Mantén esto marcado si quieres. Selenium IDE para recordar la base URL cada vez que lo inicies. Si desmarcas esto, Selenium IDE siempre se iniciará con un valor en blanco para la base. URL.
  • Registro de inicio automático. Si marcas esto, Selenium IDE registrará inmediatamente las acciones de su navegador al iniciarse.
  • Constructores de localizadores. Aquí es donde se especifica el orden en que se generan los localizadores durante la grabación. Localizadores son formas de decir Selenium IDE sobre qué elemento de la interfaz de usuario debe actuar un comando selenese. En la configuración siguiente, cuando hace clic en un elemento con un atributo ID, el ID de ese elemento se utilizará como localizador ya que "id" es el primero en la lista. Si ese elemento no tiene un atributo ID, Selenium A continuación buscará el atributo “nombre”, ya que ocupa el segundo lugar en la lista. La lista sigue y sigue hasta que se encuentra uno apropiado.

Arrastrar una entrada hacia arriba o hacia abajo en esta lista cambia el atributo al que recurre primero el registrador.

Lista de constructores de localizadores que muestra el orden de prioridad utilizado cuando el registrador genera un localizador.

Base URL Bar

Cada dirección relativa en un script se resuelve en función de este campo.

Base URL barra de Selenium IDE que contiene la dirección de la aplicación bajo prueba

  • Tiene un menú desplegable que recuerda todos los valores anteriores para facilitar el acceso.
  • El comando selenese “abrir” te llevará a la URL que usted especificó en la Base URL.
  • En esta serie de tutoriales, usaremos demo.guru99.com/test/newtours/ como nuestra base URLEs el sitio para Mercury Tours es una aplicación web de demostración que utilizamos aquí para realizar pruebas web. Usaremos esta aplicación porque contiene todos los elementos necesarios para los temas que veremos a continuación.
  • La Base URL es muy útil para acceder a información relativa URLs. Supongamos que su Base URL se establece en el Mercury Dirección de Tours arriba. Cuando ejecuta el comando “open” con el valor de destino “signup”, Selenium IDE dirigirá el navegador a la página de registro. Vea la ilustración a continuación.

comando abierto con el registro de destino relativo que se resuelve contra la base configurada URL

Barra de herramientas

La barra de herramientas contiene los controles de grabación y reproducción. A continuación se detalla cada botón y su función.

Control deslizante de velocidad de reproducción Velocidad de reproducción. Esto controla la velocidad de ejecución del script de prueba.
Botón de grabación Grabar. Esto inicia/finaliza la sesión de grabación. Cada acción del navegador se introduce como un comando Selenese en el Editor.
Botón para reproducir el conjunto completo de pruebas Ejecutar el conjunto completo de pruebas. Esto ejecutará secuencialmente todos los casos de prueba que aparecen en el panel de casos de prueba.
Botón para reproducir el caso de prueba actual Reproducir el caso de prueba actual. Esto reproducirá únicamente el caso de prueba seleccionado actualmente en el panel de casos de prueba.
Botón de pausa y reanudación Pausar/Reanudar. Esto pausará o reanudará la reproducción.
Botón de paso Paso. Este botón le permitirá entrar en cada comando de su script de prueba.
Botón Aplicar reglas de agregación Aplicar reglas de agregación. Esta es una funcionalidad avanzada. Permite agrupar comandos de Selenese y ejecutarlos como una sola acción.

Panel de caso de prueba

Panel de casos de prueba que muestra los casos de prueba abiertos con codificación de colores para casos de éxito y fallo, y un resumen de la ejecución.

  • In Selenium En el IDE, puedes abrir más de un caso de prueba a la vez.
  • El panel de casos de prueba le muestra la lista de casos de prueba abiertos actualmente.
  • Al abrir un conjunto de pruebas, el panel de casos de prueba mostrará automáticamente todos los casos de prueba que contiene.
  • El caso de prueba escrito en negrita es el caso de prueba seleccionado actualmente.
  • Tras la reproducción, cada caso de prueba se codifica por colores para indicar si ha superado la prueba o ha fallado.
  • El color verde significa "Aprobado".
  • El color rojo significa "Fallido".
  • En la parte inferior hay un resumen de la cantidad de casos de prueba que se ejecutaron y fallaron.

Editor

Puedes considerar el editor como el lugar donde ocurre toda la acción. Está disponible en dos vistas: Tabla y Código fuente.

Vista de tabla

  • La mayor parte del tiempo trabajarás en Selenium IDE que utiliza la vista de tabla.
  • Aquí es donde se crean y modifican los comandos seleneses.
  • Después de la reproducción, cada paso está codificado por colores.

Editor en vista de tabla con los pasos ejecutados codificados por colores después de la reproducción.

  • Para crear pasos, escriba el nombre del comando en el cuadro de texto “Comando”.
  • Muestra una lista desplegable de comandos que coinciden con la entrada que está escribiendo actualmente.ping.
  • Target es cualquier parámetro (como nombre de usuario, contraseña) para un comando y Valor es el valor de entrada (como tom, 123pass) para esos Targets.

Mando, Target y campos de valor del Selenium Editor de tablas IDE

Vista de fuente

  • Muestra los pasos en formato HTML (predeterminado).
  • También le permite editar su secuencia de comandos como en la Vista de tabla.

Editor en vista de código fuente que muestra el mismo caso de prueba como una tabla HTML Selenese

Panel de registro

El panel de registro muestra mensajes de tiempo de ejecución durante la ejecución. Proporciona actualizaciones en tiempo real sobre qué Selenium IDE lo está haciendo.

Los registros se clasifican en cuatro tipos:

  • Depurar – Por defecto, los mensajes de depuración no se muestran en el panel de registro. Solo aparecen cuando los filtras. Proporcionan información técnica sobre qué Selenium IDE lo está haciendo detrás de escena. Puede mostrar mensajes tales como que un módulo específico ha terminado de cargarse, se llama a una determinada función o una conexión externa. JavaEl archivo de script se cargó como una extensión.
  • info – Dice qué comando Selenium El IDE se está ejecutando actualmente.
  • Advertir – Se trata de mensajes de advertencia que aparecen en situaciones especiales.
  • Error – Estos son mensajes de error generados cuando Selenium IDE no ejecuta un comando, o si se produce una condición especificada por comando “verificar” o “afirmar” no se cumple.

Menú desplegable del panel de registro que muestra los tipos de mensajes Debug, Info, Ward y Error.

Los registros se pueden filtrar por tipo. Por ejemplo, si selecciona la opción "Error" en la lista desplegable, el panel de registros mostrará solo los mensajes de error.

El panel de registro está filtrado por error, de modo que solo se muestran los mensajes de comandos fallidos.

Panel de referencia

El panel de referencia muestra una descripción concisa del comando selenese seleccionado actualmente en el editor. También muestra la descripción del localizador y el valor que se utilizarán en dicho comando.

Panel de referencia que describe el comando selenese seleccionado con sus argumentos de destino y valor.

Panel de elementos de la interfaz de usuario

El elemento UI es para avanzados. Selenium usuarios. se utiliza JavaNotación de objetos de script (JSON) para definir el mapa de elementospings. La documentación y los recursos se encuentran en la opción “Documentación de elementos de la interfaz de usuario” en el menú Ayuda de Selenium IDE

Menú de ayuda de Selenium IDE con la entrada de documentación del elemento de interfaz de usuario

A continuación se muestra un ejemplo de una pantalla de elemento UI.

Panel de elementos de la interfaz de usuario que contiene un mapa de elementos JSON para una aplicación bajo prueba.

Panel acumulativo

Rollup te permite ejecutar un grupo de comandos en un solo paso. Un grupo de comandos se denomina simplemente "rollup". Emplea un uso intensivo de JavaConceptos de script y elementos de interfaz de usuario para formular una colección de comandos similar a una “función” en lenguajes de programación.

Los rollups son reutilizables; es decir, se pueden usar varias veces dentro del caso de prueba. Dado que los rollups son grupos de comandos condensados ​​en uno solo, contribuyen en gran medida a acortar el script de prueba.

Varios pasos de Selenese condensados ​​en un único comando rollup en el editor.

A continuación se muestra un ejemplo de cómo se ve el contenido de la pestaña acumulativa.

Panel enrollable que muestra el JavaDefinición del script detrás de una regla de rollup reutilizable

Los paneles de resumen y de elementos de la interfaz de usuario no tienen equivalente en la extensión actual; los comandos de control de flujo y la exportación de código cumplen ahora esa función.

Preguntas Frecuentes

Un único archivo con extensión .side contiene todo el proyecto: cada prueba, cada suite y la base. URLEsto sustituye al antiguo modelo de un archivo HTML por caso de prueba y facilita la integración del proyecto en el control de versiones.

Sí. La reproducción dentro de la extensión utiliza el navegador en el que está instalada, pero el ejecutor de línea de comandos ejecuta un proyecto guardado en otros navegadores y se integra en una canalización de compilación, algo que el reproductor integrado en el navegador no puede hacer.

El IDE actual incluye comandos de control de flujo, como if, else if, else, while, times, do, repeat if y for each. Esto cubre ramificaciones y bucles.ping en un guion grabado sin el JavaEl script soluciona el problema de la antigua función de resumen requerida.

La grabadora almacena varios localizadores candidatos para cada elemento. Durante la reproducción, se prueban las alternativas hasta que una funciona, por lo que un cambio de ID no necesariamente interrumpe el proceso. Si persisten los fallos, la lista de localizadores deberá editarse manualmente.

Al hacer clic con el botón derecho en una prueba o conjunto, se ofrece código WebDriver para C# NUnit, C# xUnit, Java JUnit, JavaScript Mocha, Python pytest y Ruby RSpec. Un interruptor opcional añade comentarios. traccada línea generada regresa a su paso registrado.

El aprendizaje automático se aplica principalmente a la parte más débil de las pruebas registradas: los localizadores. Los motores de autorreparación clasifican varios selectores candidatos y los reemplazan por uno que funcione cuando cambia el marcado, y modelos similares agrupan fallos repetidos para separar los defectos reales del ruido de sincronización.

Es ideal para la fase de limpieza. El código exportado es un método lineal largo, y Copilot lo refactorizará en objetos de página, extraerá datos codificados en fixtures y reemplazará las pausas fijas con esperas explícitas. Revmira los localizadores que guarda.

Tan pronto como las pruebas necesiten configuración compartida, archivos de datos, informes o reutilización en diferentes conjuntos. El IDE es excelente para probar un escenario rápidamente; un código Selenium El marco de trabajo es lo que permite que cientos de esos escenarios sean mantenibles.

Resumir este post con: