Hoy en día las aplicaciones están por todos lados: Teléfonos, Tabletas, Relojes, Coches, Televisores, Aparatos Médicos, Etc. Por lo cual hacer las pruebas necesarias en una etapa temprana para identificar errores, ayuda a evitar problemas pequeños o grandes dependiendo el uso que se le dé al software.
Existen varios tipos de pruebas, mismos que se dividen en tres niveles y se describen a continuación:
- Pruebas funcionales: Este tipo de pruebas funcionales como su mismo nombre lo dice, son pruebas que revisan cada funcionalidad que realiza el software para ver si se esta obteniendo los resultados deseados o no.
-
- Pruebas unitarias: Las pruebas unitarias son las que se realizan a cada modulo de forma independiente.
-
- Pruebas de integración: Las pruebas de integración son las que se realizan después de que se ha validado que cada modulo funcione de forma independiente, para ver si los módulos funcionan juntos o no.
-
- Pruebas de extremo a extremo: En esta etapa se realizan las pruebas funcionales de todo el sistema de inicio a fin.
-
- Pruebas de regresión: El objetivo de este tipo de prueba es validar el correcto funcionamiento de un componente modificado y a su vez validar que el componente modificado no a afectado al correcto funcionamiento del resto de componentes.
-
- Pruebas de interfaz de usuario o Pruebas de aceptación: La prueba de la interfaz de usuario (lo que el usuario ve), se hacen para comprobar si las interfaces se han desarrollado de acuerdo con lo que se describe en el documento de especificaciones de requisitos, de igual manera para corroborar si es útil y amigable con el usuario.
- Pruebas no funcionales: Las pruebas no funcionales son las pruebas de los aspectos no funcionales de una aplicación, como el rendimiento, la fiabilidad, la usabilidad, la seguridad, la escalabilidad, etc. Este tipo de pruebas se realizan después de las pruebas funcionales.
-
- Pruebas de documentación: Son las pruebas que aseguran que la documentación sobre cómo usar el sistema y los resultados que obtiene, coincidan con lo que hace el sistema.
-
- Pruebas de instalación: Validan que el software se instale y configure de manera correcta.
-
- Pruebas de rendimiento: Analizan el rendimiento de una aplicación y muestran los problemas de rendimiento.
-
-
- Pruebas de carga: Examina cuánta carga puede soportar un sistema antes que el rendimiento comience a bajar.
-
-
-
- Pruebas de estrés: Revisa un sistema en condiciones de carga extremadamente pesada y garantiza que el software no se bloquee en situaciones críticas.
-
-
-
- Pruebas de escalabilidad: Verifica si la aplicación funciona bien cuando la cantidad de usuarios, la cantidad de datos o la cantidad de transacciones aumentan significativamente.
-
-
-
- Pruebas de volumen: Evalúa el rendimiento de la aplicación con una gran cantidad de datos.
-
-
- Pruebas de confiabilidad: Valida que el sistema se ejecute sin errores y si se puede confiar en él.
-
- Pruebas de seguridad: Trata de descubrir vulnerabilidades, tanto de la aplicación, como de los datos que contenga el sistema.
Todos y cada una de estas pruebas son necesarias y mientras más rápido se detecten errores menos costoso será el problema.