Con los años, el desarrollo de software ha evolucionado mejorando la calidad de vida, reduciendo los tiempos de producción y trabajo. Y también, por qué no decirlo, simplificando las tareas cotidianas. El software se crea a través de un proceso de desarrollo donde se concibe una idea o necesidad específica, plasmándola en documentos que cuentan con requerimientos y especificaciones. Uno de los responsables de transformar estas ideas en un software es el Desarrollador, el cual, mediante la creación de un código, intenta cumplir con los requerimientos. Para ello será necesario el trabajo en conjunto con un equipo de testers.

Los testers son los encargados de poner a prueba la calidad y el funcionamiento correcto del proyecto, a través de una previa planificación, para mantenerse dentro del presupuesto y de acuerdo a los tiempos requeridos. Será necesario simplificar, agilizar y automatizar las pruebas que se llevarán a cabo a lo largo del desarrollo.

Existen herramientas que brindan soporte y control a las pruebas a realizarse a lo largo del ciclo de vida del proyecto. Estas permitirán administrar la documentación, y automatizar las pruebas que facilitarán una de las últimas etapas, conocidas como pruebas de regresión. A su vez, le dan un seguimiento al proceso, a la gestión de incidencias y a la generación de informes de las pruebas.

Las herramientas de prueba se clasifican de forma particular y según la etapa en la cual se encuentra el proyecto.

Existen herramientas unitarias para brindar soporte a una tarea particular y paquetes de herramientas que cubren varias tareas siendo un conjunto de herramientas unitarias. Otras herramientas son las intrusas que pueden interferir en la ejecución del objeto de prueba y provocar que sea diferente al objeto en el entorno real, introduciendo puntos de corte y alterando el tratamiento de interrupciones que generan depuración.

Las herramientas de gestión de incidencias o de defectos son un registro, categorización y seguimiento de defectos. A través de ellas se tendrá una asignación de prioridad y responsabilidad en su cambio de estado, evaluando las métricas necesarias que representan el grado de desarrollo de las pruebas.

A su vez, las herramientas de gestión de la configuración hacen seguimiento de la modificación del código fuente y objeto de prueba dentro de las diferentes versiones de componentes (requisitos cumplidos, versiones, entorno operativo, compilador, etc.).

Otras herramientas brindan apoyo al proceso de revisión, documentando los resultados, evaluando los mismos, suministrando listas de comprobación y apoyando la ejecución de revisiones en línea.

Dentro de las herramientas para la gestión de pruebas existen generadores de datos asociados a base de datos (brindan datos a partir de ficheros planos y de reconocimiento de estructuras y contenidos). Los generadores de datos de pruebas basados en el código brindan datos a partir del código fuente; no pueden identificar una funcionalidad ausente ya que solo generan datos de prueba en base al código aportado.

En cuanto a las herramientas para la especificación de pruebas, existen 2: la primera, genera datos de prueba asociados a la interfaz (datos de acuerdo a los parámetros de la interfaz, aporta datos de pruebas de robustez). La segunda, genera datos de pruebas basados en las especificaciones (datos de prueba asociados a los documentos de especificación).

Herramientas para la ejecución de pruebas como drivers permiten acceder al objeto de prueba cuando las interfaces aún no han sido implementadas. Regulan la entrada y salida de datos. Restringen el desarrollo de pruebas registrando resultados reales para un objeto específico de prueba, aportando su entorno de sistema propio.

Stubs simulan la funcionalidad de un componente invocado, son necesarios cuando las consideraciones de seguridad impiden el uso del entorno de producción, replican el o parte del entorno de producción, generalmente utilizados para pruebas de sistemas e integración. Emulan el entorno de producción tan real como sea posible.

Además, existen herramientas para el análisis de pruebas y análisis del objeto de prueba. Son herramientas de comparación, comparan resultados esperados y reales brindando datos relevantes que son seleccionados a través de las funcionalidades de filtro. Dentro se encuentran las herramientas de análisis de cobertura, estas implementan contadores que registran cada acceso para evaluar la cobertura. También existen las herramientas de análisis dinámico, las cuales controlan y registran el estado interno del objeto de prueba.

Por último, hay herramientas para pruebas no funcionales, herramientas para pruebas de carga y rendimiento. Estas siguen el comportamiento en tiempo real del objeto de prueba en distintas situaciones. Generan y ejecutan casos de pruebas dirigidos por parámetros, con resultados similares a las condiciones reales. También existen supervisores de pruebas que analizan, verifican y documentan el uso o recursos del sistema. Además ¨observan¨ el comportamiento del objeto de prueba en el entorno real.

Al utilizar estas herramientas puede haber riesgos, ya que la desviación en la calidad de las mismas genera una estimación errónea de los beneficios y costes. Sin embargo, la mayor ventaja es la optimización de las tareas, el incremento de la calidad de ejecución de pruebas y el mayor potencial del control de las mismas.

Alumnas: Jimena Valenzuela, Denís Mattos y Maitza Torres

Categorías: Software TestingTools

0 comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *