Te cuento los objetivos que busco cuando exploro herramientas de testing

  • Autor de la entrada:
  • Categoría de la entrada:Herramientas

La exploración de herramientas como objetivo para el uso eficaz de las mismas

Explorar herramientas de testing permite cubrir ciertos aspectos que toda área requiere para lograr un uso eficaz y eficiente cuando tiene integraciones que conforman una plataforma de trabajo colaborativa. Hay empresas que destinan un área para que sirva de laboratorio justamente para probar herramientas. En este artículo te cuento los motivos que podemos tener para definir los objetivos de una exploración de estas características.

¿Qué se logra con la exploración?

  • Identificar lo básico de toda herramienta para poder tener  suficientes fundamentos que sirvan para tomar la decisión de seleccionar aquella que mejor se adapte, considerando la etapa en la que se encuentre el área, el estado de sus proyectos, la integración necesaria con otras herramientas que usen las otras áreas de la empresa, el conocimiento técnico que tengan los miembros del área para poder hacer uso de sus funcionalidades, el costo de adquisición y de mantenimiento, entre otros aspectos.
  • Tener elementos que permitan organizar un proyecto piloto para ‘probar’ una herramienta y así determinar si aplica o no, su implementación en el área, habiéndose previsto ciertos escenarios en los que se usen las funcionalidades requeridas y en un ambiente de prueba controlado lo más cercano al productivo, en cuanto a base de datos y su arquitectura.
  •  Ir reconociendo y registrando los factores que permitan alcanzar el éxito para cuando se necesite evaluar, implementar, desplegar y llevar a cabo el soporte de las herramientas de prueba en la organización, ya que a medida que se van explorando diferentes herramientas, con la propia comparación entre la que se esté explorando contra las fueron exploradas, se irán identificando valores que se cotejarán contra los criterios de aceptación que se hayan definido y que el área esté buscando en toda herramienta.

¿Cuáles pueden ser nuestras guías?

Para que nuestra exploración sea organizada y coordinada ya que podemos llevarla a cabo de manera individual o en conjunto con miembros del equipo, debemos tener definido los siguientes puntos:

  • una clasificación de herramientas por finalidad y actividades de prueba que soporten, es decir, aquellas que permitan conducir una gestión integral del testing (cobertura del proceso de pruebas de inicio a fin), y aquellas que se usen para una gestión específica (automatización de pruebas de aplicaciones web, aplicaciones mobile, aplicaciones de webservices, automatización de procesos, pruebas de accesibilidad, pruebas de usabilidad, pruebas de performance, y tantas otras más).
  • parámetros que nos sirvan para recordar e identificar los beneficios que perseguimos cuando estamos explorando herramientas, y los riesgos que tenemos identificados en relación con procesos de automatización de pruebas.
  • parámetros que nos permitan recordar las consideraciones que se hayan definido sobre herramientas que permiten ejecutar y/o gestionar pruebas, sea manuales y/o automatizadas.

Todos estos aspectos los podemos tener cargados y organizados en alguna ‘herramienta’ colaborativa a la cual los miembros del equipo puedan acceder para poder consultarla cuando tengan que realizar una exploración.

Debe haber un administrador de contenidos y un proceso ágil de actualización para ir enriqueciendo la base de conocimientos a medida que se vayan explorando herramientas, de esa forma se mantiene ‘vivo’ el contenido que refiere a definiciones y parámetros.

Herramientas que podemos usar para apoyar nuestras actividades

  • herramientas para ejecutar  casos de pruebas;
  • herramientas para preparar datos de pruebas;
  • herramientas para gestionar testing de manera integral (requisitos, casos de prueba, procedimientos de prueba, scripts automatizados, resultados de prueba, datos de prueba y defectos, reportes, métricas)
  • herramientas para investigar y evaluar;
  • hojas de cálculo (colaborativas);

Por supuesto que aquí tenemos por un lado un conjunto de herramientas open source y por el otro, un conjunto de herramientas aranceladas, y aquí es donde la exploración se convierte en un valor muy importante para toda empresa y/o área de testing ya que del resultado de la investigación y evaluación que se haga, será la toma de decisión que mandos medios y/o gerencias definan y apliquen para adquirir e implementar un producto en la organización que de manera directa o indirecta, impactará en el corto o mediano plazo en diversas áreas que interactúen con el área de testing, afectando para bien o para mal las relaciones formales e informales entre los miembros de los proyectos.

Objetivos que podemos definir y proponer perseguir

  • Automatizar tareas repetitivas;
  • Automatizar tareas manuales que requieran determinados recursos;
  • Apoyar las actividades de prueba manuales durante todo el proceso de prueba (desde el inicio al fin);
  • Aplicar calidad en las actividades de prueba para que sean más consistentes;
  • Aplicar calidad en las actividades de prueba para aumentar el porcentaje de reproducción de defectos;
  • Automatizar actividades que no se puedan ejecutar manualmente;
  • Aumentar la fiabilidad de las pruebas;

En cada uno de los objetivos aquí citados, hay que pensar en mejorar la eficiencia, calidad y confianza en todos los niveles, ya que cuando definimos las clasificaciones y los parámetros lo debemos hacer sobre la base de ciertos criterios, que podemos proponer o que nos definen:

  • objetivo;
  • precio;
  • modelo de concesión de licencias;
  • tecnología;
  • tipo de actividad;
  • tipo de soporte;
  • integración;
  • nivel de intrusión;

Conclusiones

Hay que tener presente que cada proyecto necesitará de una determinada cantidad de herramientas, que pueden como no integrarse (sería ideal que así lo hicieran) y que pueden como no reutilizarse para otros proyectos que se estén ejecutando en el mismo momento o más adelante. No todas las herramientas se usan de la manera, algunas tienen más importancia que otras para cierto tipo de proyectos.

Esta reflexión que te comparto tiene que ver con que hay gran cantidad de proyectos que se vienen desarrollando bajo modelo ágil, mientras que otros siguen manejándose bajo modelo cascada, e incluso compartiendo los mismos entornos, entonces el tema de la adquisición e implementación de herramientas es uno de los factores que todo responsable de área debe evaluar ya que sus prestaciones pueden ser muy diferentes.

En próximos artículos estaré tratando contenidos relacionados con:

  • Herramientas de gestión y seguimiento de tareas;
  • Herramientas de comunicación y para compartir información;
  • Herramientas de compilación y distribución de software;
  • Herramientas de gestión de la configuración;
  • Herramientas de diseño, implementación y ejecución de pruebas;
  • Herramientas de cloud computing y virtualización;

Fuentes

Gus Terrera

Apasionado por el agile testing y la ia.