Este documento describe diferentes tipos de pruebas de software, incluyendo pruebas funcionales, no funcionales, estructurales, de confirmación, regresión, rendimiento, carga, estrés, escalabilidad, penetración, usabilidad y mantenibilidad. Define cada tipo de prueba y explica su objetivo y cómo se aplica.
1. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Tipos de Pruebas
´
Andres Felipe Cano Cadavid acanocad@gmail.com
´
Tecnologico de Antioquia
29 de Julio del 2013
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
2. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Tipos de Prueba
Un tipo de prueba se centra en un objetivo de prueba en particular que
puede ser cualquiera de los siguientes:
Una funcionalidad a realizar por el software
Una caracter´stica de calidad no funcional, tales como fiabilidad y
ı
usabilidad.
La estructura o arquitectura del software.
Confirmar que se han solucionado los defectos.
Localizar cambios no intencionales.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
3. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas Funcionales
Pruebas No Funcionales
Pruebas Estructurales
´
´
Pruebas de Confirmacion y Pruebas de Regresion
Pruebas Funcionales
Las funciones son lo que hace el sistema
Las funciones que un sistema, subsistema o componente debe llevar a
cabo pueden describirse en productos de trabajo tales como
´
´
especificacion de requisitos, casos de uso o una especificacion funcional.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
4. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas Funcionales
Pruebas No Funcionales
Pruebas Estructurales
´
´
Pruebas de Confirmacion y Pruebas de Regresion
Pruebas Funcionales
Se basan en funciones y su interoperabilidad con sistemas espec´ficos, y
ı
pueden llevarse a cabo en todos los niveles de prueba.
´
´
Se utilizan las tecnicas basadas en la especificacion para obtener las
condiciones de prueba y casos de prueba.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
5. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas Funcionales
Pruebas No Funcionales
Pruebas Estructurales
´
´
Pruebas de Confirmacion y Pruebas de Regresion
Pruebas No Funcionales
´
Estas pruebas se refieren a como funciona el sistema.
Pueden ejecutarse en todos los niveles de prueba.
´
El termino pruebas no funcionales hace referencia a las pruebas
necesarias para medir las caracter´sticas del software que pueden
ı
medirse en una escala variable, tales como tiempos de respuesta
en el caso de las pruebas de rendimiento.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
6. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas Funcionales
Pruebas No Funcionales
Pruebas Estructurales
´
´
Pruebas de Confirmacion y Pruebas de Regresion
Pruebas Estructurales
Pueden realizarse en todos los niveles de prueba.
´
Son idoneas para ayudar a medir la exhaustividad de las pruebas
´
mediante una evaluacion de la cobertura de un tipo de estructura.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
7. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas Funcionales
Pruebas No Funcionales
Pruebas Estructurales
´
´
Pruebas de Confirmacion y Pruebas de Regresion
Cobertura
Definition
Es la medida en que un juego de pruebas ha probado una estructura,
expresada como porcentaje de los elementos cubiertos. Si la cobertura
´
˜
´
no es del 100 %, entonces podran disenarse mas pruebas para probar
los elementos faltantes y aumentar la cobertura.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
8. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas Funcionales
Pruebas No Funcionales
Pruebas Estructurales
´
´
Pruebas de Confirmacion y Pruebas de Regresion
Cobertura
En todos los niveles de prueba puede recurrirse a herramientas para
´
medir la cobertura de codigo de los elementos, tales como sentencias o
decisiones, por ejemplo:
Java
McCabe IQ (http://www.mccabe.com/)
Cobertura (http://cobertura.sourceforge.net/)
EMMA (http://sourceforge.net/projects/emma/)
.NET
McCabe IQ (http://www.mccabe.com/)
NCover (http://ncover.com)
TestDriven.NET (http://www.testdriven.net/)
Javascript
McCabe IQ (http://www.mccabe.com/)
Coveraje (https://github.com/coveraje/coveraje)
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
9. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas Funcionales
Pruebas No Funcionales
Pruebas Estructurales
´
´
Pruebas de Confirmacion y Pruebas de Regresion
´
Pruebas de Confirmacion
Una vez detectado y corregido un defecto, el software debe volverse a
´
probar para que el defecto original fue corregido con exito. A esto se le
´
denomina confirmacion.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
10. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas Funcionales
Pruebas No Funcionales
Pruebas Estructurales
´
´
Pruebas de Confirmacion y Pruebas de Regresion
´
Pruebas de Regresion
´
Son la prueba reiterada de un programa ya probado, despues de
haber sido modificado con vistas a localizar, defectos surgidos o no
descubiertos como resultado de los cambios.
Se realizan cuando el el software o su entorno sufren
modificaciones.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
11. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas Funcionales
Pruebas No Funcionales
Pruebas Estructurales
´
´
Pruebas de Confirmacion y Pruebas de Regresion
´
´
Pruebas de Confirmacion y Pruebas de Regresion
Las pruebas deben ser repetibles si desean utilizarse para pruebas
´
´
de confirmacion o regresion.
Incluyen pruebas funcionales, no funcionales y estructurales.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
12. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
Pruebas de Rendimiento
´
Son aquellas que son realizadas para determinar que tan rapido un
sistema realiza una tarea bajo ciertas condiciones pre-planificadas
de trabajo.
´
Pueden servir para diferentes propositos:
Demostrar que el sistema cumple los criterios de rendimiento.
´
Comparar dos sistemas para encontrar cual de ellos funciona mejor
Medir que partes del sistema o de cargas de trabajo provocan que el
conjunto ofrezca bajo rendimiento.
Es importante y con frecuencia dif´cil de conseguir que las
ı
condiciones de prueba sean similares a las esperadas en el uso
real.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
13. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
Herramientas
Allmon (http://code.google.com/p/allmon/)
JMeter (http://jmeter.apache.org/)
JCrawler (http://jcrawler.sourceforge.net/)
NTimer (http://www.codeproject.com/Articles/7008/NTimePerformance-unit-testing-tool)
Raw Load Tester
(http://www.room4me.com/techtools/RawLoadTester/index.html)
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
14. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
Pruebas de Carga
Miden la capacidad del sistema que tiene el sistema de soportar los
niveles crecientes de carga realistas anticipadas, resultado de las
´
transacciones generadas por un numero de usuarios paralelos.
Mide y analiza los tiempos de respuesta medios de usuarios en
diferentes escenarios de uso t´pico.
ı
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
15. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
´
Pruebas de Estres
Analizan la capacidad del software para soportar picos de carga
´
que rozan o superan la capacidad maxima.
Un objetivo de estas pruebas es definir el l´mite en el cual el sistema
ı
´
´
´
´
falla, para poder identificar cual es el eslabon mas debil de la
cadena.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
16. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
Pruebas de Escalabilidad
Miden la capacidad del sistema para satisfacer las necesidades de
eficiencias futuras, las cuales pueden ser superiores a las
requeridas en el momento.
Su objetivo es determinar la capacidad del sistema para crecer (por
ejemplo en usuarios o almacenamiento) sin exceder los l´mites
ı
acordados ni fallar.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
17. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
´
Pruebas de Penetracion
Prueban la capacidad del software para evitar el acceso no
´
autorizado a las funciones y a la informacion.
Simulan un ataque desde afuera y proporciona un riguroso examen
de vulnerabilidades actuales y potenciales, incluyendo fallas de
software y hardware, configuraciones defectuosas del sistema,
´
medidas de proteccion insuficientes.
Tipos de ataques:
Entorno
Entrada
´
Datos y logica
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
18. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
Herramientas
Inguma (http://inguma.sourceforge.net/)
OWASP (https://www.owasp.org)
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
19. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
Pruebas de Usabilidad
´
Miden el grado de adecuacion del software a sus usuarios.
´
El proposito de estas pruebas es eliminar los defectos de usabilidad
y contrastar los requisitos de usabilidad.
El tester o probador debe tener habilidades y experiencia en las
´
siguientes areas:
Sicolog´a
ı
Sociolog´a
ı
Ergonom´a
ı
´
Legislacion nacional
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
20. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
Pruebas de Usabilidad
Este tipo de pruebas analiza los siguientes factores:
Efectividad
Eficiencia
´
Satisfaccion
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
21. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
Pruebas de Usabilidad
Los factores se analizan midiendo los siguientes atributos
Comprensibilidad
Aprendibilidad
Operatividad
Atractivo
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
22. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
Pruebas de Mantenibilidad
Miden el grado de facilidad con la que el software puede ser
analizado, modificado y probado.
Miden el tiempo empleado en diagnosticar y arreglar los problemas
identificados en el sistema.
´
Tambien miden el esfuerzo empleado en realizar cambios al
software.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
23. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
Pruebas de Mantenibilidad
˜
Tamano del software
Complejidad
Estructura
Proceso de Desarrollo
´
Documentacion
Equipos de Desarrollo y Mantenimiento
Procedimiento de Mantenimiento
Clientes y Usuarios
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
24. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
Pruebas de Portabilidad
Miden la la facilidad con la que el software puede ser transferido de
un entorno especificado, ya sea de forma inicial o desde otro
entorno existente.
Los aspectos de se miden son:
Instalabilidad
Coexitencia/ Compatibilidad
Adaptabilidad
Reemplazabilidad
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
25. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Pruebas de Rendimiento
Pruebas de Carga
´
Pruebas de Estres
Pruebas de Escalabilidad
´
Pruebas de Penetracion
Pruebas de Usabilidad
Pruebas de Mantenibilidad
Pruebas de Portabilidad
Pruebas de Fiabilidad
Pruebas de Fiabilidad
Miden las madurez del software en el tiempo.
´
Las metricas que se toman son:
Tiempo medio entre fallos
´
Tiempo medio de recuperacion
Tiempo medio para generar backups
Tiempo empleado en restablecer los datos
´
Los aspectos que se evaluan son robustez y recuperabilidad.
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
26. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Quiz
El tipo de prueba no funcional que chequea que la interfaz de usuario
´
sea facil de usar y entender es:
1
Pruebas de caja blanca
2
Pruebas unitarias
3
Pruebas de usabilidad
4
Pruebas de seguridad
5
Pruebas de caja negra
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
27. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Quiz
´
Las pruebas de integracion son:
1
Un tipo de prueba
2
Un nivel de prueba
3
´
Una tecnica de pruebas
4
Una etapa del proceso de pruebas
5
Ninguna de las anteriores
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas
28. ´
Introduccion
Grupos de Tipos de Pruebas
Tipos de Pruebas
Quiz
Quiz
´
Las pruebas de confirmacion son:
1
Un tipo de prueba
2
Un nivel de prueba
3
´
Una tecnica de pruebas
4
Una etapa del proceso de pruebas
5
Ninguna de las anteriores
´
Andres Felipe Cano Cadavid acanocad@gmail.com
Tipos de Pruebas