Relytest: Entrevista sobre testing exploratorio en GeneXus con Úrsula Bartram

Este post fue escrito por Gabriela Sánchez y Miguel Sánchez como parte de su investigación en testing exploratorio en su proyecto de grado en ORT, donde yo participo como cliente, ayudando a definir actividades y necesidades en torno a los aspectos metodológicos, incluyendo el prototipo de una herramienta que le de soporte (llamada Relytest). En ese contexto, Gabriela y Miguel entrevistaron a Úrsula Bartram para ver cómo hacen testing exploratorio en GeneXus.


Continuando con las entrevistas a distintos testers y referentes del área de testing visitamos en esta oportunidad a Ursula Bartram, que trabaja en GeneXus y nos cuenta acerca de una realidad con particularidades que resultan algo inusuales así como fascinantes para muchos de nosotros.

Contexto: testing de GeneXus

GeneXus es la solución usada por empresas, organizaciones, casas de software y gobiernos en todas partes del mundo. GeneXus crea aplicaciones con un enfoque a prueba de futuro. Cada aplicación se describe de forma independiente de la tecnología, para que las aplicaciones puedan ser generadas automáticamente para todas las plataformas soportadas.

Pensemos en las pruebas, la dificultad de probar algo con tantas posibles entradas y salidas es tremenda. Tiene un nivel de indirección y abstracción muy grande. Nos comenta Úrsula que tienen unas 4500 pruebas automatizadas, cada una cuenta con unos 10 test cases. ¡Sí, eso mismo! ¡45.000 casos de prueba que corren todos los días sobre 4 versiones distintas y les lleva unas 20hs! ¡Impresionante! Las versiones varían cada 30 min. El margen de error que admiten en ese conjunto de pruebas es bajísimo, menor a un 3%. Y estas pruebas definen si se libera o no.

Planificación y gestión del testing exploratorio en GeneXus

Nos cuenta Úrsula que en su caso no les exigen justificar las horas que dedican a tal o cual tarea. Por otro lado no se entiende la dificultad o la “demora”, o sea el tiempo que insumen las pruebas. Es difícil de explicar y de medir el costo del testing.

Planificar es muy difícil. El testing exploratorio que se realiza es totalmente ad-hoc, solo se documenta la experiencia, ya sea mediante un documento o un email, en el cual se incluyen capturas de pantalla.

Una vez que se cierra el desarrollo de una funcionalidad nueva, se mete en un build de Genexus. Luego tratan de generar una KB (del inglés Knowledge Base***, base de conocimiento), y utilizar esa funcionalidad. En general disponen de un email del desarrollador con los detalles de lo que se implementó, a veces un documento de especificación.

La forma de probar que tienen es muy ágil, se va construyendo las funcionalidades a medida que van probando. Realizan testing exploratorio y reportan los incidentes mediante el correo, que es la forma que han adaptado para la gestión. Veremos más adelante algunos detalles sobre esto. Utilizan google docs o planillas para el registro de las pruebas exploratorias.

Si bien tienen un objetivo claro, por el camino encuentran miles de “cosas” por ejemplo, problemas de usabilidad.

*** La KB es como el código fuente de un sistema hecho con GeneXus. Es un modelo que se guarda en una base de datos relacional. Cuenta con un modelo de objetos, los cuales tienen definidos atributos, reglas de negocio, procesos, etc. Todo eso se guarda en la KB (base de conocimiento)

El equipo

El equipo de pruebas no tiene una capacitación específica en testing, cuentan con capacitación interna, en general son desarrolladores GeneXus. Se ocupan de testear y de hacer documentación oficial de GeneXus.

Aproximadamente un 40% del equipo trabaja en automatización y un 60% en pruebas manuales que incluye: testing exploratorio, documentación sobre el producto y automatización.

Set up de una prueba

Para tener una idea de la complejidad que implica el armado y configuración de las pruebas, nos cuenta Úrsula el procedimiento habitual. Para probar tienen que armar la KB, luego hacer el build en GeneXus, y luego en ejecución comprobar que todo esté funcionando. Esto debe funcionar en varias plataformas. En general deben realizar todo de cero, algunas veces pueden reutilizar alguna KB que es parecida a otra, pero son las menos veces.

Documentación de las pruebas

Documentar tiene un costo y es el del tiempo que le quita a estar probando. No se le da mucho valor a registrar el testing exploratorio porque automatizan muchísimas pruebas con GXtest.

Actualmente están trabajando en catalogar el material de pruebas de forma que les resulte sencillo brindar a los clientes ejemplos ya armados para que estos puedan fácilmente disponer de ejemplos concretos.

A modo de cierre

Vemos un contexto completamente diferente a los que muchos de nosotros estamos acostumbrados, en el cual el enfoque testing exploratorio es el protagonista del testing manual. Donde las particularidades del contexto hacen que se requiera un enfoque sumamente ágil para que éste resulte viable y productivo.

 

¿Quién es Ursula Bartram?

Soy Ingeniera en Computación (UDELAR) y trabajo en GeneXus desde hace muchos años. Al entrar a la empresa, no existía el testing como una profesión como lo es hoy, y por supuesto no existían las áreas de test, al menos en GeneXus. Comencé trabajando como desarrolladora, fueron unos pocos meses, y luego ya me incliné por el servicio, y pasé a trabajar en soporte cuando nacía el generador Java, y con él fueron mis primeros pasos con el test como algo más dedicado digamos.

Siempre me gustó que las cosas anden bien, es más, siento una molestia cuando algo no funciona como espero. Y suelo buscar y hacer lo que esté a mi alcance para que eso cambie y mejore. Fue así como arrancamos con el área de test de GeneXus, buscando mejorar su calidad, que cumpla con las espectativas de los clientes, y asi ganar su confianza en el producto.

Por las características de GeneXus, su gran potencial y el ser multiplafatorma en n dimensiones (lenguajes, sistemas operativos, DMBS, drivers, etc, etc), y la cantidad de versiones que soportamos, la única manera de testearlo es via la automatización. Y es en esa área específica del testing me especializo. De todas maneras, la curiosidad, la exploración está en los genes de los ingenieros. E indudablemente todos sin saberlo ni seguir un proceso específico, hacemos test exploratorio en la empresa continuamente.

 

Links a otras entrevistas y a más información del proyecto:

Leave a Reply

Your email address will not be published. Required fields are marked *