En este Resumen (Mapa Mental), Veremos todo lo relacionado a las Pruebas de software, basicamente todo lo escencial resumido en... Por Que hacerlos?, Como identificarlos?, y Como hacerlos?.
Las Pruebas de Software son importantes por que
aseguran el correcto cumplimiento de la funcionalidad
del producto, ayudando a ganar confianza, confirmar la
fiabilidad del uso y previenen defectos en produccion, la
cual tiene un impacto economico positivo en la
empresa en cuestion.
Proceso
Basico:
Planeacion: Donde se hace un
esquema de...¿Que se va a
aprobar?, ¿Como se va a
probar?, ¿Quien lo va a probar?,
¿Cuando?
Analisis y Diseño de Pruebas: En esta
fase se analizan los requerimientos y
se diseñan los casos de prueba
Ejecucion de Pruebas: Esta fase es la mas
importante ya que es donde los casos de
pruebas son ejecutados en un ambiente de
prueba o calidad, para vlaidar que los
requerimientos especificados se hayan
implementado de la manera correcta.
Evaluacion de los Resultados: En esta fase es
donde determinamos si han alcanzado los
objetivos de las pruebas, es decir, si la
implementacion de los requerimientos fue lo
optimo, lo ideal es que el usuario realice
tambien otras pruebas para dar el visto bueno
a la aplicacion y esta pueda ser puesta en
produccion
Cierre de Pruebas: Es la ultima fase del proceso
de pruebas, aqui archivamos toda la
documentacion generada y se realiza una carta
de aceptacion de cierre que debe ser firmada
por los directivos involucrados, tambien es
bueno incluir los riesgos activos de la aplicacion,
si es que se aplica
Propositos.
1) Detectar la mayor
cantidad de errores
posibles.
2) Ayudar a los
administradores a la toma
de decisiones.
3) Buscar los escenarios
seguros para la prueba
del producto.
4) Evaluar la
Cantidad.
5) Verificar la
correcion del
producto.
6) Asegurar la
calidad.
7) Competitividad
Comercial.
8) Alcanzar mayor
calidad en el software.
9) Cambios en la
tecnologia
10) Reduccion de
cartas de riesgo.
11) Incremento de
productividad.
Niveles de Las Pruebas
Tests...
Unitarios
Objetivos
Detectar Errores en los
Datos logicos y
Algoritmos.
Participantes
Programadores.
Ambiente
Desarrollo.
Metodo
Caja Blanca.
Integracion.
Objetivos.
Detectar Errores de
interfaces y
relaciones entre
Componentes.
Participantes.
Programadores.
Ambiente.
Desarrollo.
Metodo
Caja Blanca.
Funcional.
Objetivos.
Detectar errores en
la implementacion
de requerimientos
Participantes.
Tester,
Analistas.
Ambiente.
Desarrollo.
Metodo
Funcional
Sistema
Objetivos.
Detectar fallas en el
cubrimiento de los
requerimientos.
Participantes.
Tester,
Analistas.
Ambiente.
Desarrollo.
Metodo
Funcional.
Aceptacion.
Objetivos.
Detectar fallas en
la implementacion
del sistema.
Participantes.
Tester,
Analistas,
Clientes.
Ambiente.
Desarrollo.
Metodo
Funcional.
Metodos de
Pruebas:
Prueba de Caja
Blanca:
Examinan la estructura interna de
la aplicacion, el tester Elige
entradas para recorrer rutas de
codigo y determinar las salidas
Apropiadas.
Pruebas de
Caja Negra:
Examinan las funcionalidades de una
apicacion sin escudriñar su estructura
interna. Ignoran el mecanismo interno
del sistema y se enfocan en las salidas
generadas en respuesta a entidades
seleccionadas.
Pruebas de
Caja Gris
Es una combinacion de la caja Blanca y la
Caja Negra. El objetivo de esta prueba es
buscar defectos ocasionados por uso
inadecuado o estructura, no propiedades
de la aplicacion.
Tipos De Test.
Test de
Facilidad.
Se Refiere a la disponibilidad
de los recursos para llevar a
cabo los objetivos o metas
señalados, la factibilidad se
apoya en 3 aspectos basicos.
Test de
Volumen.
Hacen Referencia a Grandes
cantidades de datos para
determinar los limites en que se
causa que el sistema falle,
Tambien identifican la carga
maxima o volumen que el sistema
puede manejar en un periodo
dado.
Test de
Stress.
Esta evaluacion pone a prueba lo que la
rubustez y la confiabilidad del software
sometiendo a condiciones de usos extremos
entre estas condiciones se incluyen el envio
excesivo de peticiones y la ejecucion en
condiciones de hardware limitados.
Test de
Usabilidad.
Es una tecnica usada en el diseño de
interacciones centrada en el usuario
para evaluar un producto mediante
pruebas con los usuarios mismos.
Test de
Seguridad.
Es un sistema de auditoria usado
para detectar una vulnerabilidad,
brechas y seguridad, puntos debiles
en un sistema informatico.
Test de
Performance.
Permiten conocer y mitigar los
riesgos relacionados con el mal
desempeño de las aplicaciones en
entornos de produccion y realizan
las correcciones necesarias antes
de salir al mercado.
Test de
Configuracion.
1. Validar y verificar que el cliente del
sistema funcione apropiadamente en las
estaciones de trabajos recomendadas. 2.
Verificar la aplicacion del sistema en
diferentes configuraciones de hardware y
software
Test de Insta
Labilidad.
Permite verificar la Instalacion. Es
la capacidad del producto o
software para ser instalado en un
entorno especifico.
Test
Fiabilidad.
Valida la capacidad de reaccion de un
sistema y de los equipos, tambien pretende
validar las capacidades de un sistema
informatico para seguir operando en caso
de una falta.
Casos de Pruebas:
Documentacion que especifica las acciones a
seguir para llegar a un objetivo
especifico(Resultado esperado) Que contiene o
deberia contener datos de entrada, lo que debe
contener un caso de prueba segun el estandar de
IEEE 829 Es:
Tecnicas de Pruebas de
Asegramiento de la
Calidad
Estatica.
Realizadas sin ejecutar el codigo de la
aplicacion y su objetivo son realizar
documentacion y codigo fuente. Incluye
revisiones y analisis estaticos.
Dinamica
Requieren la ejecucion del software por lo que
es posible medir con mayor presicion el
comportamiento de la aplicacion desarrollada.
Tipos de Pruebas
Automatizadas.
Es el uso de un software especial
(Independiente del software que se esta
probando) para controlar la ejecucion
de las pruebas y comparacion de los
resultados reales con los resultados
esperados
Manuales
Es el proceso de probar manualmente
el software para detectar se requiere
un tester para desempeñar el papel
de un usuario final y el uso de la
mayoria de las caracteristicas de la
aplicacion para garantizar un
comportamiento correcto.