Mirá Los Siete Principios Fundamentales Del Software Testing

El software testing es -hoy en día- una práctica fundamental para asegurar la calidad del producto digital que queremos entregar. Y es que precisamente a través del software testing podemos obtener respuestas claras del rendimiento de una aplicación y si cumple perfectamente con los parámetros que nosotros mismos hemos organizado y con lo que espera el cliente de esa App. 

A continuación, en este artículo detallaremos siete principios fundamentales del software testing y la importancia que tiene.

  • Las pruebas muestran la presencia de errores

Probar una aplicación solo puede revelar que existen uno o más defectos en la aplicación, sin embargo, la prueba por sí sola no puede probar que la aplicación esté libre de errores. Por lo tanto, es importante diseñar casos de prueba que encuentren tantos defectos como sea posible.

  • Las pruebas exhaustivas son imposibles

A menos que la aplicación bajo prueba (AUT) tenga una estructura lógica muy simple y una entrada limitada, no es posible probar todas las combinaciones posibles de datos y escenarios. Por esta razón, el riesgo y las prioridades se utilizan para concentrarse en los aspectos más importantes a probar.

  • Pruebas tempranas

Cuanto antes comencemos las pruebas de software, más rápido encontraremos los errores. Tan pronto como estén disponibles los productos iniciales, como los requisitos o los documentos de diseño, podemos comenzar a probar. Es común que la fase de prueba se apriete al final del ciclo de vida del desarrollo, es decir, cuando el desarrollo ha finalizado, por lo que, al comenzar el software testing temprano, podemos preparar las pruebas para cada nivel del ciclo de vida del desarrollo.

Otro punto importante sobre las pruebas tempranas es que cuando los defectos se encuentran al principio del ciclo de vida, son mucho más fáciles y económicos de corregir. Es mucho más económico cambiar un requisito incorrecto que tener que cambiar una funcionalidad en un sistema grande que no funciona según lo solicitado o diseñado.

  • Agrupación de defectos

Durante las pruebas, se puede observar que la mayoría de los defectos informados están relacionados con una pequeña cantidad de módulos dentro de un sistema. Es decir, un pequeño número de módulos contiene la mayoría de los defectos del sistema. Normalmente, se estima que el 80% de los problemas se encuentra en el 20% de los módulos.

  • Pruebas de regresión

Si sigue ejecutando el mismo conjunto de pruebas una y otra vez, es probable que esos casos de prueba no descubran más defectos nuevos. Porque a medida que el sistema evoluciona, muchos de los defectos informados anteriormente se habrán solucionado y los casos de prueba antiguos ya no se aplican.

Cada vez que se soluciona una falla o se agrega una nueva funcionalidad, debemos hacer pruebas de regresión para asegurarnos de que el nuevo software modificado no haya roto ninguna otra parte del software. Sin embargo, esos casos de prueba de regresión también deben cambiar para reflejar las permutas realizadas en el software para que sean aplicables y luego detectar nuevos defectos.

  • Las pruebas dependen del contexto

Las diferentes metodologías, técnicas y tipos de pruebas están relacionadas con el tipo y la naturaleza de la aplicación. Por ejemplo, una aplicación de software en un dispositivo médico necesita más pruebas que un software de juegos.

Más importante aún, un software de dispositivo médico requiere pruebas basadas en riesgos, cumplir con los reguladores de la industria médica y posiblemente técnicas de diseño de pruebas específicas.

Del mismo modo, un sitio web muy popular debe pasar por rigurosas pruebas de rendimiento, así como pruebas de funcionalidad para asegurarse de que el rendimiento no se vea afectado por la carga en los servidores.

  • Los errores siempre están

El hecho de que las pruebas no hayan encontrado ningún defecto en el software no significa que el software esté listo para ser enviado. Entonces la pregunta que cabe es ¿Fueron las pruebas ejecutadas realmente diseñadas para detectar la mayoría de los defectos? Hay muchos otros factores a considerar antes de tomar la decisión de enviar el software final.

MKT
MKT
Compartí esta nota...
Facebook
LinkedIn
Twitter
WhatsApp
Telegram
Email
Seguí leyendo...