Header Ads Widget

Ticker

6/recent/ticker-posts

Uso de Spectron para aplicaciones electrónicas

 La velocidad a la que las tecnologías y las empresas están creciendo hoy en día es bastante insondable. Hemos recorrido un largo camino desde la era digital de la década de 1970 hasta la era de la información del siglo XXI en tan poco tiempo. El ritmo al que las tecnologías de todo el mundo están evolucionando cosas que creíamos imposibles está empezando a tomar forma en la realidad. La inteligencia artificial en DevOps , la comunicación omnicanal a través de la plataforma de desarrollo de experiencias múltiples y la interacción entre dispositivos para facilitar la vida avanza a diario.

Además de todo el progreso, la creación de un conjunto de aplicaciones que funcionen en un escritorio ha sido un desafío, ya que necesita un conjunto de habilidades diferente. Y, sinceramente, ¿por qué alguien pasaría por la molestia de aprender otro idioma, marcos y ampliar otra curva de aprendizaje para adaptarse a las aplicaciones para el entorno del navegador? Ahí es donde entra en juego Electron Application . Con Electron, los desarrolladores pueden contar con los conjuntos de habilidades que ya han adquirido para crear aplicaciones que utilizan las capacidades de la aplicación de escritorio nativa.

¿Qué es la aplicación de electrones?

Si ha utilizado su escritorio para enviar mensajes a través de WhatsApp, envió archivos en Slack o código escrito en Atom o Visual Studio Code, es probable que ya esté utilizando una aplicación electrónica. Aplicaciones diseñadas para trabajar en escritorios que se ejecutan en Windows, MacOS o Linux utilizando el marco de código abierto Electron es lo que se puede definir como Aplicaciones Electron.

Ahora, qué es Electron , debe ser una pregunta que te mueres por hacer. Electron es un marco para crear aplicaciones nativas con tecnologías web como JavaScript, HTML y CSS. El proyecto de código abierto iniciado por un ingeniero de Github ha despertado la conversación para muchos, ya que los desarrolladores ahora pueden centrarse en el núcleo de la aplicación en lugar de dedicar tiempo a aprender otro lenguaje o marco nuevo. Electron combina los tiempos de ejecución de Node.js y el módulo de contenido de Chromium para ayudarlo a crear aplicaciones de escritorio usando Javascript.

Por ejemplo: Appium Desktop, WhatsApp Desktop, Slack Desktop, etc.

¿Cuál es el desafío al que nos enfrentamos en términos de automatización de esta aplicación?

Es posible que Electron haya facilitado el proceso de creación de la aplicación de escritorio. Sin embargo, probar estas aplicaciones es un trabajo tedioso y lento si se hace manualmente. La solución para probar estas aplicaciones de escritorio es automatizar el proceso de prueba. Ahora, el enfoque tradicional para la automatización de tales aplicaciones sería el trabajo del Selenium Webdriver.

Desafortunadamente, Selenium no es compatible con las aplicaciones que se basan en la plataforma electrónica de código abierto. Por lo tanto, surgió la necesidad de otra plataforma para automatizar las pruebas para las aplicaciones creadas en Electron. Dado que la comunidad de Electron apoya el Proyecto Spectron, los desarrolladores web pueden escribir pruebas de integración para probar aplicaciones de Electron.

Qué es el espectrón:

Spectron es un marco de código abierto que se utiliza para escribir fácilmente pruebas de integración y de un extremo a otro para sus aplicaciones de Electron. Simular la entrada del usuario, navegar por páginas web son algunas de las capacidades que ofrece Spectron. También configura y destruye las aplicaciones y permite que se controle de forma remota con soporte completo para las API de Electron. Dado que está construido sobre ChromeDriver y WebDriverIO , también puede probar las aplicaciones Electron en el mismo.

Instalación:

npm install –save-dev spectron

La prueba de ejemplo a continuación verifica algunas validaciones que son específicas de la aplicación de electrones:

Usemos la aplicación de demostración de la API de Electron, que se puede descargar aquí.

Lo primero que notamos es que las herramientas para desarrolladores de Chrome ya están ahí.

Comandos para abrir herramientas de desarrollo en diferentes sistemas operativos

  • Use alt + cmd + i para mac,
  • F12 en ventanas y
  • ctrl + shift + i en linux OS

Una vez que haya abierto las herramientas de desarrollo, puede inspeccionar los elementos y preparar los localizadores.

¿Cómo probar una aplicación de Electron?

Podemos usar módulos mocha, estándar, chai usando spectron y javascript.

Es necesario pasar la ruta binaria de la aplicación en el objeto Aplicación.

setup.js: este archivo JS es el archivo base donde la función "removeStoredPreferences" te ayudará a borrar el caché e iniciar la aplicación de nuevo, la función setupApp te ayudará a hacer clic en el botón "Comenzar" cuando el elemento esté visible.

index.js: este es un archivo de prueba real donde algunos de los ganchos como "antes" y "después" se han utilizado para iniciar y cerrar la aplicación junto con el bloque "it" donde se han escrito los casos de prueba reales.

Puede usar el comando estándar mocha && para ejecutar el script de muestra anterior

Una vez que haya ejecutado el comando, podemos ver que la prueba se ejecuta más rápido que otras herramientas. También puede ver que hemos realizado algunas validaciones como el recuento de ventanas, isVisible, isFocused, etc., que son específicas de la aplicación Electron. También hemos realizado una declaración de espera usando "waitForVisible" en el script para esperar a que un elemento sea visible. También se han realizado algunas acciones como hacer clic para hacer clic en el botón "Comenzar" . La página siguiente nos mostrará lo que sucede cuando hacemos clic en el botón "Comenzar".

Hemos adjuntado un enlace a continuación para acceder a las API de Spectron : https://github.com/electron-userland/spectron#clientwindowbyindexindex

También pudimos proporcionar el enlace a un proyecto de muestra de Spectron al que puede acceder y conocer más: https://github.com/electron/electron-api-demos (proyecto oficial de la comunidad de electrones)

Con el proyecto de muestra a mano y las API tan fácilmente disponibles, ejecutar proyectos es simple siguiendo los pasos a continuación:

Pasos para ejecutar los proyectos:

  1. clon de git https://github.com/electron/electron-api-demos
  2. cd electron-api-demos
  3. npm install
  4. prueba npm

Resumen

La propuesta única de Spectron de proporcionar módulos de nodo para probar aplicaciones de Electron cambiará las reglas del juego para todos aquellos que dependen de las herramientas de código abierto. Y dado que existe una gran comunidad de desarrolladores que ya están compartiendo ideas y mejores prácticas, la escasez de conocimiento que podemos utilizar para crear Electron Apps nunca se agotará y, en cambio, evolucionará de vez en cuando. Si bien las herramientas comerciales tienen su conjunto de ventajas, vale la pena explorar las herramientas de código abierto como Spectron.

Publicar un comentario

0 Comentarios