1. Calidad de Software Qa
Tema: 3 Validación de código
PhD(c). Luis Fernando Aguas Bucheli
+593 984015184
@Aguaszoft
Laguas@uisrael.edu.ec
2. “La ciencia de hoy es la tecnología del mañana”. Edward
Teller, físico al que se le atribuye el sobrenombre de
“Padre de la bomba H”.
3. Objetivo
• Realizar pruebas de
software para garantizar la
usabilidad y el eficiente
funcionamiento del
software.
● 3.1 Pruebas unitarias e
integración
● 3.2 Pruebas de regresión
Contenido
9. ¿Qué son las pruebas unitarias y de
integracion?
• Las pruebas de integración se realizan para validar la
interacción entre diferentes módulos, y se realizan pruebas
unitarias para comprobar si son correctos las piezas de código
individuales
10. ¿Qué tipos de pruebas se utilizan como
pruebas de integración?
• Existen dos niveles de pruebas de integración: de componentes
y de sistemas.
• En el primero se evalúan los elementos integrados en un mismo
sistema, mientras que en el segundo se verifica la relación
entre interfaces de sistemas externos.
11. ¿Qué son las pruebas de integración?
• Pruebas integrales o pruebas de integración son aquellas que
se realizan en el ámbito del desarrollo de software una vez que
se han aprobado las pruebas unitarias y lo que prueban es que
todos los elementos unitarios que componen el software,
funcionan juntos correctamente probándolos en grupo.
12. ¿Qué diferencia hay entre una prueba
unitaria y una de integración?
• Las pruebas unitarias suelen ser específicas y prueban un
conjunto limitado de entradas y salidas dentro de un solo
módulo.
• De lo contrario, las pruebas de integración suponen que cada
parte del sistema se ensambla y prueba.
13. ¿Qué diferencia hay entre una prueba
unitaria y una de integración?
• Las pruebas unitarias suelen ser específicas y prueban un
conjunto limitado de entradas y salidas dentro de un solo
módulo.
• De lo contrario, las pruebas de integración suponen que cada
parte del sistema se ensambla y prueba.
14. ¿Qué son las pruebas de integración
ejemplos?
• Las pruebas de integración verifican que los distintos módulos o
servicios utilizados por tu aplicación funcionan bien en
conjunto.
• Por ejemplo, se puede probar la interacción con la base de
datos o asegurarse de que los microservicios funcionan bien en
conjunto y según lo esperado.
15. ¿Cómo se hacen pruebas de integración?
• Las pruebas de integración se definen como un mecanismo de
testeo de software, donde se realiza un análisis de los procesos
relacionados con el ensamblaje o unión de los componentes,
sus comportamientos con múltiples partes del sistema (ya sea
de archivos operativos) o de hardware, entre otras.
16. ¿Cuándo se realizan las pruebas de
integración?
• Las pruebas de integración se realizan después de las pruebas
unitarias y antes de las de aceptación, y garantizan que todas
las partes de un sistema funcionan correctamente cuando se
ensamblan como un todo cohesionado
17. Tipos de Pruebas de Integración
Incremental : Todos los programadores se integran
uno por uno y realizan una prueba después de cada
paso.
Ascendente : Se realiza el test de integración desde la
parte inferior del flujo de control hacia arriba,
sustituyendo los componentes o sistemas por
controladores.
Big Bang : En este tipo de test, los componentes y
módulos se integran todos simultáneamente, y
posteriormente se prueban como un todo.
Sándwich :Este tipo de test combina los enfoques
ascendente y descendente, también es llamado test
de integración híbrido o mixto. En este se considera
que el sistema se compone por 3 capas, la del medio
es el objetivo de las pruebas, la capa superior y la
inferior. Las pruebas comienzan por la capa superior y
convergen la intermedia.
20. ¿Qué son las pruebas unitarias?
• Las pruebas unitarias consisten en verificar el comportamiento
de las unidades más pequeñas de su aplicación.
• Técnicamente, eso sería una clase o incluso un método de clase
en los lenguajes orientados a objetos, y un procedimiento o
función en los lenguajes procedimentales y funcionales.
21. ¿Qué son las 3 A en las pruebas unitarias?
• Un test tiene tres partes, que se identifican con las siglas AAA
en inglés: Arrange (Preparar), Act (Actuar), Assert (Afirmar).
22. ¿Cuándo usar pruebas unitarias?
• Las pruebas unitarias consisten en aislar una parte del código y
comprobar que funciona a la perfección.
• Son pequeños tests que validan el comportamiento de un
objeto y la lógica.
• El unit testing suele realizarse durante la fase de desarrollo de
aplicaciones de software o móviles.
23. Características Pruebas Unitarias
Automatizable; Aunque los resultados deben ser específicos de cada test unitario
desarrollado, los resultados se pueden automatizar, de forma que podemos hacer las
pruebas de forma individual o en grupos.z
Completas; El proceso consta de pequeños test sobre parte del codigo, pero al final, se
debe comprobar su totalidad.
Repetibles; En el caso de repetir las pruebas de forma individual o grupal, el resultado
debe ser siempre el mismo dando igual el orden en que se realicen los test, los tests se
almacenan para poder realizar estas repeticiones o poder usarlos en otras ocasiones.
Independientes; Es un código aislado que se ha creado con la misión de comprobar
otro código muy concreto, no interfiere en el trabajo de otros desarrolladores.
Rápidos de crear; a pesar de lo que muchos desarrolladores opinen, el código de los
tests unitarios no debe llevar más de 5 minutos en ser creado, están diseñados para
hacer que el trabajo sea más rápido..