ElasTest: añadiendo observabilidad a tus tests

ElasTest es una plataforma enfocada a simplificar el testing de sistemas distribuidos que ofrece acceso fácil y directo a los servicios más usados durante el testing y la capacidad de analizar los logs de los distintos componentes generados durante los tests. Siendo además una herramienta muy sencilla de desplegar y configurar.

Contexto

La demanda de Software cada vez más interconectados y más complejos hace que cada vez éste sea más complejo y costoso de testear. Los principales objetivos de ElasTest son mejorar la eficiencia y la efectividad del proceso de testing y por tanto mejorando la calidad final del software, mejorando a su vez los tiempos necesarios de testing y por tanto la posibilidad de tener el software listo para producción más rápido.

El proyecto

ElasTest ha sido desarrollada por un consorcio Europeo de universidades, centros de investigación y empresas, entre ellas Naeva Tec, financiada por la Comunidad Europea dentro de programa marco de Horizonte2020. Durante 3 años el consorcio ha dedicado tiempo y recursos para tener una herramienta de Testing innovadora y completa capaz de integrarse en los flujos de Integración y Validación Continuos más usados actualmente.

Para alcanzar los objetivos del proyecto se definió una arquitectura de micro-servicios basados en contenedores que son invocados por un cerebro central que provee una interfaz de usuario intuitiva y agradable para el usuario que permite

Gestion de tests

Construye tu entorno de test con las herramientas que ofrece ElasTest. Conecta todos los componentes de tu aplicación a ElasTest y ejecuta los tests en unos pocos clics.

Monitorización de métricas

Obtén todas la información de tus componentes de cada test, navegador web, base de datos, aplicación… Logs y métricas generados durante la ejecución de un test en un solo sitio y sincronizados.

Navegadores web

Los testers saben lo difícil que es comprobar que las aplicaciones funcionan adecauadamente en cada navegador, por eso ElasTest provee todos los navegadores para poder probar en ellos de forma automática.

Analizador de logs

Obtener los logs es solo la primera parte, y no tiene sentido si no se pueden explorar y analizar con una flexible, intuitiva y potente herramienta.

Integración con Jenkins

ElasTest ofrece un plugin de Jenkins para que puedas utilizar ElasTest en tu entorno de CI, pudiendo de esta forma usar muchas de las funcionalidades de ElasTest directamente desde tus jobs de Jenkins.

Tecnología

Nuestro papel

Dentro del proyecto de ElasTest en Naeva Tec hemos aportado nuestra experiencia para:

  • Definir el entorno de desarrollo y validación de la herramienta
  • Montar y mantener ambos entornos proveyendo soporte integral a todo el consorcio.
  • Liderar el diseño, desarrollo y ejecución de un plan de pruebas por componente y de la herramienta como un todo.
  • Realizar una validación de las nuevas versiones de ElasTest haciendo uso de la ultima versión estable disponible de ella misma.
  • Diseñar, desarrollar y ejecutar pruebas específicas para aplicaciones web de videoconferencia y tele-enseñanza.

Seguramente la parte más compleja ha sido usar ElasTest para testear ElasTest, nos hemos enfrentado a multiples dificultades, pero si estamos realizando una herramienta para testing… ¡usémosla!

 

Conclusión y lecciones aprendidas

El trabajo en un consorcio de estas características ha sido especialmente enriquecedor todo los partners han aportado sus puntos fuertes al proyecto dando como resultado una herramienta 100% lista para ser usada en diferentes contextos desde el testing de tecnologías 5G, webapps, web-conferences y aplicaciones móviles. Además el trabajo de investigación necesario para aunar en una sola herramienta tantas funcionalidades como de las que dispone ElasTest y avanzar en el estado del arte del testing ha resultado en un buen número de artículos de investigación publicados.

En Naeva Tec ya teníamos nuestros procesos de calidad que incluían procesos automáticos de validación de los desarrollos, pero desde la participación en este proyecto hemos mejorado estos procesos añadiendo ElasTest sobre todo para mejorar la observabilidad de estos y reducir el tiempo necesario para detectar bugs. Además hemos visto que muchas empresas necesitan una mejora de sus procesos de calidad y testing y por ello hemos decidido poner a la disposición de nuestros clientes nuestra experiencia y conocimiento.

 

Más sobre ElasTest

Si quieres saber más sobre ElasTest puedes visitar https://elastest.io