Skip to content

Tabla Periódica de los Diferentes Tipos de Pruebas de Software

Diferentes tipos de pruebas de software

Dentro de la materia de química es común estar familiarizados con la tabla periódica sin embargo, nosotros nos encontramos inmersos en el mundo del software y es por eso que a manera de guía, he decidido crear una tabla periódica con los diferentes tipos de pruebas de software que usamos con mayor frecuencia. 

Hay varios tipos de pruebas de software los cuales son realizados en diferentes etapas del ciclo de vida del desarrollo de software. A nivel general podemos hablar de dos tipos de pruebas; estáticas y dinámicas. Las pruebas dinámicas tienen dos subtipos de pruebas; funcionales y no funcionales.

tabla periódica de software testing

Tipos de Pruebas de Software

1. Pruebas estáticas (static testing)

Las pruebas estáticas son un método de pruebas de software que verifican defectos en el software sin necesidad de ejecutar el código de la aplicación.

2. Revisión (review)

Una revisión es una evaluación sistemática de un documento por una o varias personas con el objetivo de encontrar y remover errores en una etapa temprana del ciclo de vida del desarrollo de software. Las revisiones se realizan comúnmente para verificar documentos como requerimientos, diseños de sistemas, código, planes de prueba y casos de prueba. 

3. Tutorial (walkthrough)

Dentro de las pruebas de software, los tutoriales son utilizados para revisar documentos con compañeros, gerentes y demás miembros del equipo. Usualmente, el autor del documento guía y recopila comentarios  para posteriormente realizar actualizaciones.

4. Pruebas de inspección (inspection testing)

En ingeniería de software, la inspección se refiere a la revisión de cualquier trabajo por parte de personas capacitadas las cuales buscan defectos utilizando un proceso bien definido.

5. Pruebas dinámica (dynamic testing)

Las pruebas dinámicas son un tipo de pruebas de software que se realizan para analizar el comportamiento dinámico del código. Esto incluye probar el software para los valores analizados de entrada y de salida. 

6. Pruebas funcionales (functional testing)

Probar de manera rigurosa cada componente individual de una aplicación de software frente a los requerimientos del cliente se conoce como prueba funcional.

7. Pruebas de integración (integration testing)

Probar el flujo de los datos o la interfaz entre dos o más módulos es conocido como pruebas de integración.

8. Pruebas de  humo (smoke testing)

Realizar una revisión rápida de las funcionalidades básicas y críticas de una aplicación se conoce como prueba de humo. Usualmente se realiza antes de adentrarnos en pruebas más profundas. 

9. Pruebas de cordura (sanity testing)

Las pruebas de cordura son un subconjunto de las pruebas de regresión. Se realizan para asegurarnos que los cambios nuevos en el código están funcionando de manera correcta; por lo general estos cambios en el código son menores. El objetivo es validar la corrección de errores y funcionalidades críticas de la aplicación.

10. Pruebas de regresión (regression testing)

Ejecutar los casos de prueba regulares para confirmar que al haber agregado, modificado o eliminado alguna funcionalidad, no haya impactado en funcionalidades antiguas se conoce como prueba de regresión.

11. Pruebas de confirmación (retesting)

Verificar si un defecto fue solucionado o no después de obtener la compilación por parte del equipo de desarrollo se conoce como prueba de confirmación. También se le llama volver a probar.

12. Pruebas de sistema (system testing)

La prueba de sistema es un tipo de prueba de software de extremo a extremo donde el ambiente de prueba es similar al ambiente de producción.

13. Pruebas de aceptación del usuario (UAT)

La prueba de aceptación del usuario (UAT) es un tipo de prueba de software realizada por el usuario final o cliente para verificar y aceptar la aplicación antes de que esta pase al ambiente de producción.

14. Pruebas de extremo a extremo (end-to-end testing)

La prueba de extremo a extremo es una metodología utilizada en el ciclo de vida del desarrollo de software para probar la funcionalidad y el rendimiento de una aplicación bajo circunstancias y datos similares a las que se podrían presentar en el ambiente de producción.

15. Pruebas ad hoc (adhoc testing) 

Probar el software o la aplicación de manera aleatoria sin analizar los requerimientos se denomina prueba ad hoc. Es un tipo de prueba negativa. 

16. Pruebas de mono (monkey testing)

Probar la aplicación o el software aleatoriamente sin aplicar ninguna lógica se llama prueba de mono. En algunas ocasiones se les puede llamar pruebas de gorilas.

17. Pruebas exploratorias (exploratory testing)

Explorar la aplicación, comprender como funcionan todas y cada una de las funcionalidades y probar la aplicación tomando como base su funcionamiento se conoce como prueba exploratoria.

18. Pruebas no funcionales (non-functional testing)

Este método prueba parámetros no funcionales como la confiabilidad, pruebas de carga, el rendimiento, fiabilidad, escalabilidad entre otros aspectos. El propósito principal de las pruebas no funcionales es evaluar la velocidad de lectura del sistema de software según los parámetros no funcionales.

19. Pruebas de rendimiento (performance testing)

Probar la estabilidad y el tiempo de respuesta de una aplicación al aplicar carga se conoce como prueba de rendimiento. La estabilidad es la capacidad que tiene una aplicación para soportar el número deseado de usuarios. El tiempo de respuesta es el tiempo que se tarda la aplicación en enviar una solicitud, ejecutar el programa y recibir una respuesta por parte del servidor. 

20. Pruebas de carga (load testing)

Las pruebas de carga son un tipo de prueba de software no funcional en donde se prueba el rendimiento de una aplicación de software bajo una determinada carga. Con este tipo de prueba evaluamos la estabilidad y el tiempo de respuesta aplicando una carga menor o igual al número de usuarios para la cual fue diseñada.

21. Pruebas de estrés (stress testing)

Probar la estabilidad y el tiempo de respuesta de una aplicación al aplicar una carga de usuarios superior para la cual la aplicación fue diseñada se conoce como prueba de estrés. Con este tipo de pruebas comprobamos cómo funciona el sistema bajo condiciones anormales y verificamos si se despliega un mensaje de error apropiado cuando el sistema está bajo estrés. 

22. Pruebas de picos (spike testing)

Las pruebas de picos son un tipo de prueba de rendimiento donde la aplicación recibe de manera repentina y extrema un incremento o decremento en la carga de usuarios. El objetivo de la prueba de picos es determinar el comportamiento de una aplicación de software cuando recibe variaciones extremas de tráfico. 

23. Pruebas de escalabilidad (scalability testing)

Durante la prueba de escalabilidad se prueba la estabilidad y el tiempo de respuesta de una aplicación de software aplicando una carga de usuarios mayor a la contemplada en su etapa de diseño. El objetivo es encontrar el punto de quiebre donde el software va a fallar.

24. Pruebas de remojo (soak testing)

Probar la estabilidad y el tiempo de respuesta de una aplicación de software aplicando una carga de usuarios contínua durante un periodo de tiempo específico se conoce como prueba de remojo. También suele ser llamada prueba de resistencia.

25. Pruebas de volumen (volume testing)

Insertar un gran volumen de datos en una aplicación de software para probar su estabilidad y tiempo de respuesta se conoce como prueba de volumen. Por lo general se realiza esta prueba para verificar la capacidad de la base de datos. 

26. Pruebas de compatibilidad (compatibility testing)

Probar la aplicación o las funcionalidades del software en varios ambientes se denomina prueba de compatibilidad. 

27. Pruebas de seguridad (security testing)

Las pruebas de seguridad descubren vulnerabilidades en el sistema y determinan si los datos y recursos del mismo se encuentran protegidos hacia posibles intrusos. Adicionalmente, se aseguran de que la aplicación de software se encuentre libre de riesgos o amenazas que puedan causar una pérdida. 

28. Pruebas de usabilidad (usability testing)

Probar que tan fácil e intuitiva resulta una aplicación de software hacia el usuario final es conocido como prueba de usabilidad.

29. Pruebas basadas en cookies (cookie-based testing)

Este tipo de pruebas verifican las cookies creadas en su navegador web. Una cookie es una pequeña pieza de información que el servidor web almacena en un archivo de texto en el disco duro del usuario (cliente).

Puntos Finales a Considerar

Este artículo trata sobre los diferentes tipos de pruebas de software los cuales son esenciales para mejorar la calidad de nuestras aplicaciones. Por lo general, no se realizan todos estos tipos de pruebas dentro de un mismo proyecto, una buena práctica es seleccionar las pruebas más relevantes y que más impacto puedan generar en nuestro proyecto actual tomando como referencia nuestros objetivos y el alcance que buscamos. Hay que considerar que algunos tipos de pruebas minimizan los defectos y nos ayudan a asegurar la calidad del software de manera regular por lo que es importante incluirlas dentro de nuestro set.

¿Cuál es su tipo de prueba preferida? ¿Qué otro tipo de pruebas agregarías a la lista?

(Visited 37 times, 1 visits today)
Sri Priya P Kulkarni

Sri Priya P Kulkarni

Sri Priya is an ISTQB certified tester with 4+ years of experience in software testing; she is dedicated & hardworking with a focus on performing testing activities on web applications. She has also conducted API testing. In addition, Sri Priya has hands-on experience in manual and automation testing; her focus is on software quality and making sure that software is bug-free. She loves to share her knowledge and discuss software testing-related topics.
Sri Priya P Kulkarni

Sri Priya P Kulkarni

Sri Priya is an ISTQB certified tester with 4+ years of experience in software testing; she is dedicated & hardworking with a focus on performing testing activities on web applications. She has also conducted API testing. In addition, Sri Priya has hands-on experience in manual and automation testing; her focus is on software quality and making sure that software is bug-free. She loves to share her knowledge and discuss software testing-related topics.

Get the latest articles, news, and feature releases from MuukTest emailed to you once a month

Are you ready to test 20X faster?

We’ll create a free MuukTest account for you!

Are you ready to test 20X faster?

We’ll create a free MuukTest account for you!