Importance of testing in software development

In a software development project, errors may appear at any stage of the life cycle, some of them even remain undiscovered, hence the importance of testing in software development.

There is a high probability that the final code will have errors in requirements, design or functionality. To identify these problems before they occur in a critical environment, it is necessary to perform software testing, a very important part of the process but also very expensive; however, we must take into account that the cost due to a failure while the software is running can be much higher.

Test objectives and attributes

De este modo, los objetivos principales al realizar pruebas serán los siguientes:

  • Detectar un error específico.
  • Descubrir errores no descubiertos antes.
  • Tener un buen caso de prueba.

Además, los atributos que debería tener una buena prueba son:

  • Intentar obtener la más alta probabilidad de encontrar un error.
  • No debe ser redundante.
  • No debe ser ni demasiado sencilla ni demasiado compleja.

Tipos de pruebas

La clasificación de las pruebas según la forma en que se ejecutan se clasifican en:

  1. Pruebas manuales: las que ejecuta el usuario paso a paso.
  2. Pruebas automáticas: consiste en el uso de otro software y la comparación de los resultados obtenidos y los esperados. Permite adicionar pruebas cuya ejecución manual sería tediosa y/o difícil.

También las pruebas se dividen en distintos niveles, que van desde probar módulos individuales hasta pruebas de todo el sistema en su conjunto. Los distintos niveles de pruebas son los siguientes:

  1. Pruebas unitarias: una prueba unitaria es la manera de comprobar el correcto funcionamiento de un módulo de código. Esto nos permite asegurar que todos los módulos del sistema desarrollado funcionen correctamente por separado.
  1. Pruebas de integración: Si hemos visto que todo individualmente funciona correctamente, ¿por qué debería fallar cuando se une? Pues sí, puede fallar al unir módulo que por separado funcionan correctamente. Para evitar esto, existen las pruebas de integración, cuyo objetivo es coger módulos, a los que se aplicó las pruebas de unidad, y construir una estructura de programa que determine el diseño.
  1. Pruebas de validación: Se realizan al acabar las pruebas de integración, cuando ya se ha compuesto el software como sistema y se han corregido los errores de interfaz. Estas pruebas se concentran en las acciones visibles para el usuario.
  1. Pruebas de sistema: Estas pruebas están mas allá del alcance del proceso del software y no las realizan únicamente los ingenieros de software. Se comprueba también el nivel de seguridad del sistema, se hacen pruebas de resistencia que permiten saber como responderá el sistema a situaciones anormales de recursos y pruebas de recuperación y de rendimiento.
  1. Pruebas de aceptación: El usuario lo prueba en su propio entorno y nos dice si lo acepta tal y como está o no.

Como conclusión podemos decir que las pruebas de software permiten la ejecución de un sistema con el objetivo principal de encontrar errores presentes en el mismo; así conseguimos reducirlos y mejorar la calidad del sistema, haciéndolo más robusto frente a fallos.

 

Tomado de YunBitSoftware

At vero eos et accusamus et iusto odio digni goikussimos ducimus qui to bonfo blanditiis praese. Ntium voluum deleniti atque.

Melbourne, Australia
(Sat - Thursday)
(10am - 05 pm)
You can unsubscribe at any time by following the unsubscribe link in our newsletter. To learn how we manage user privacy, see our page.

Leave us your contact

Déjanos tus datos
en_USEnglish
Abrir chat
¿Necesitas Ayuda?
Hola,
En que podemos ayudarte!