Porque los ojos no mienten - Pruebas visuales con Applitools Eyes
Publicado: 2021-08-17Las pruebas de regresión aseguran que cualquier cambio introducido en el software no rompa nada que antes funcionaba bien. Las pruebas de regresión visual garantizan que no haya surgido ningún problema con la GUI debido a los cambios realizados. La aplicación aún debería verse como antes de que se introdujeran las modificaciones. Una herramienta de prueba de regresión visual captura capturas de pantalla de la interfaz de usuario actual y las compara con las capturas de pantalla originales. Examina las polaridades históricas y confirma que las páginas web aún se muestran como se esperaba en varios navegadores, incluso después de las modificaciones. Applitools Eyes es una de las herramientas de prueba visual más populares disponibles en el mercado que funciona con su tecnología patentada de visión cognitiva.
Applitools ha desarrollado una herramienta de prueba de software basada en la nube, Applitools Eyes, que valida automáticamente todos los aspectos visuales de cualquier aplicación web, móvil y nativa. Estas validaciones son similares a las que hace un probador manual. La tecnología de Applitools valida automáticamente la corrección del diseño, el contenido y la apariencia de la interfaz de usuario, y le permite automatizar pruebas que solo se pueden realizar manualmente sin ella. Puede probar aplicaciones en cualquier navegador, dispositivo, sistema operativo y lenguaje de programación, en cualquier resolución de pantalla y factor de forma.

Una descripción general del sistema de ojos de Applitools
Varios entornos de prueba interactúan con los diversos componentes Eyes de Applitools para implementar pruebas de interfaz de usuario visual. El sistema consta de los siguientes componentes:
- La aplicación bajo prueba (AUT).
- Un conjunto de pruebas que se ejecuta para el AUT y verifica su precisión.
- Los SDK se llaman en el código del conjunto de pruebas para activar la captura de pantalla y la verificación visual.
- Controladores de aplicaciones como Selenium o Appium, que proporcionan un marco para crear trajes de prueba que se pueden enviar al AUT. También los usa para capturar capturas de pantalla.
- El servidor recibe y almacena el envío de capturas de pantalla desde los SDK. Las compara con las imágenes de referencia almacenadas e informa de cualquier diferencia.
- Eyes Test Manager proporciona al usuario los resultados de las pruebas que puede revisar y ayuda al usuario a informar errores y administrar las imágenes de referencia.
El siguiente es un ejemplo de cómo interactúan los componentes para ejecutar una prueba, lo que permite que el equipo de pruebas vea y administre los resultados de la prueba.

Crédito: Applitools
PASO 1: El equipo de pruebas ejecuta el conjunto de pruebas. El código suele repetir los siguientes pasos para diferentes estados de la aplicación.
PASO 2.1: Usando un controlador como Selenium o Appium, se simulan las acciones del usuario, como hacer clic con el mouse, ingresar con el teclado, etc.
PASO 2.2: Junto con eso, se llama a la API Eyes SDK para realizar un punto de control visual simultáneamente.
PASO 2.2.a: Eyes SDK usa el controlador para recopilar la captura de pantalla.
PASO 2.2.b: Después de lo cual Eyes SDK envía la imagen recopilada al servidor de Eyes. Aquí, las imágenes y las demás imágenes de puntos de control se comparan con las imágenes de referencia que se almacenaron previamente en el servidor.
PASO 3: Una vez procesadas las imágenes de la prueba, el Eyes Server proporciona información sobre las diferencias observadas. Junto con esto, se proporciona un enlace al sitio de Eyes donde se pueden ver los resultados.
PASO 4: El equipo de pruebas usa Eyes Test Manager para ver los resultados de las pruebas, actualizar las líneas de base, informar errores y anotar regiones que necesitan un manejo especial. Después de ver todos los resultados, el equipo de pruebas guarda la línea de base. Esto se convierte en la base de comparación en la próxima prueba.
Applitools tiene SDK que admiten una amplia gama de marcos de automatización de pruebas populares: web, móviles y de escritorio, varias infraestructuras de controladores de aplicaciones, lenguajes de programación y todas las plataformas, navegadores y sistemas operativos comunes. Estos SDK no interactúan directamente con el AUT, por lo que Eyes es completamente independiente de cómo se implementa e implementa la aplicación.

Compatibilidad de Applitools Eyes
Applitools tiene SDK para todos los lenguajes de programación populares y ejecutores de pruebas que brindan una cobertura de prueba completa para web, dispositivos móviles, escritorio, PDF, sistemas operativos de TV, IoT, imágenes y más.
SDK WEB
Los SDK WEB son compatibles con las principales herramientas y programas de prueba web:
- Selenio para -Java, JavaScript, C#, Ruby, PHP, Python
- WebdriverIO4, WebdriverIO5, WebdriverIO6
- IDE de selenio
- Ciprés
- Dramaturgo (Nueva incorporación)
- Titiritero (Nueva incorporación)
- TestCafé
- Storybook CSF React (nueva incorporación), Storybook -React, Angular, Vue
- Watir
- Carpincho
- Transportador (nueva incorporación)
- UFT/QTP
- Lean CFT#, Lean JavaScript
- IU codificada
SDK móviles
Los SDK móviles son compatibles con las principales herramientas y programas de pruebas móviles:
- Nativo de Appium: C#, Java, JavaScript, PHP, Python, Ruby
- Appium Web: C#, Java, JavaScript, PHP, Python, Ruby
- XCUI Objective-C, XCUI Swift
- Café exprés
- Calabaza iOS y Android
SDK de captura de pantalla
CLI, C#, Java, JavaScript, PHP, Ruby, XCTest Objective-C, XCTest Swift
SDK de escritorio
UFT de Windows, interfaz de usuario codificada de Windows
Herramientas sin código
Formularios PDF, IDE sin código
El administrador de pruebas en Applitools Eyes
Eyes Test Manager es una herramienta basada en navegador que brinda acceso a datos de prueba de interfaz de usuario visual. Permite a los usuarios administrar los resultados de las pruebas, las líneas base y otros metadatos.
Eyes Test Manager proporciona las siguientes instalaciones:
- Acceda a los resultados de las ejecuciones de prueba de IU visual
- Aceptar o rechazar las diferencias registradas
- Anotar pasos con comentarios
- Agregar nivel de coincidencia e ignorar regiones
- Actualizar la línea de base
- Ver y administrar la aplicación y los nombres de las pruebas
- Ver y administrar las líneas base y las ramas.
- Ver y administrar los entornos de ejecución
- Comparar y fusionar ramas de referencia
- Administre su cuenta, equipos y usuarios
Hay varias otras herramientas y conceptos que se han integrado en Eyes que ayudan al usuario a organizar pruebas y casos de prueba. Una de estas herramientas es Baseline. El protocolo de inspección visual compara las imágenes capturadas con las que se almacenaron en la línea de base de la prueba anterior. Cada ejecución de prueba puede tener un aspecto y una sensación diferentes. Los ojos tienen muchas líneas base por prueba, donde cada línea base representa un entorno seleccionado. Cada una de estas líneas base puede almacenar series de referencias de imágenes.
Cuando se ejecuta la prueba visual, la aplicación pasa por una secuencia de estados de la aplicación, y para cada estado se ejecuta un punto de control que captura una imagen de la aplicación para ese estado. Eyes compara la serie de imágenes capturadas con la serie de imágenes de referencia almacenadas en la línea base de esa prueba e informa cualquier diferencia significativa. La imagen dentro de la línea de base depende de las ejecuciones de prueba, pero también podría depender de otros factores, como los sistemas operativos, el tipo de navegador y el tamaño de la ventana gráfica. Estos factores se denominan entorno de ejecución.
La ventana gráfica es el área visual de cualquier aplicación dentro de la ventana de la aplicación. El tamaño de la ventana gráfica también puede afectar el diseño de cualquier página. Por ejemplo, cambiar la dimensión del navegador puede cambiar la apariencia del texto representado. Las páginas receptivas con elementos como menús pueden aparecer diferentes para diferentes dimensiones. La fuente y el tamaño de la imagen pueden cambiar. Nota: la ventana gráfica es específica de la plataforma.