SlideShare una empresa de Scribd logo
1 de 21
Prueba del Software
Docente: Jesús Ulloa Ninahuamán
INTRODUCCIÓN
• Definición 1: La prueba
(testing) es el proceso de
ejecutar un programa
con la intención de
encontrar fallos.
• Un buen caso de prueba
es el que tiene alta
probabilidad de detectar
un nuevo error.
• Un caso de prueba con
éxito es el que detecta
un error nuevo.
INTRODUCCIÓN
• Definición 2: Una
investigación técnica del
producto bajo prueba
para proporcionar a los
interesados (stakeholders)
información relacionada
con la calidad.
• Para el efecto se tiene
establecido las fases,
como prueba de calidad
de software.
INTRODUCCIÓN
EJEMPLO:
Especificación:
• Un programa lee tres valores enteros desde la pantalla.
• Los tres valores son interpretados de forma que representan
las longitudes de los tres lados de un triángulo.
• El programa muestra un mensaje que indica si el triángulo es
escaleno (todos los lados distintos), isósceles (dos iguales) o
equilátero (todos iguales)
Problema:
• Escribir el conjunto de casos de prueba que se consideren
adecuados para probar este programa.
DEFINICIONES
• Error: Una equivocación de una persona al desarrollar
alguna actividad de desarrollo del software.
• Defecto: Se produce cuando el software presenta
algún error (vista interna detectado por
desarrolladores).
• Falla: Es un desvío respecto del comportamiento
esperado del sistema (vista externa, detectado por los
usuarios).
PRINCIPIOS
Los principios más relevantes son los siguientes:
• Un programador debe evitar probar su propio
desarrollo.
• Una organización, no debe probar sus propios
desarrollos.
• Los test deben incluir entradas inválidas e
inesperadas, así como las válidas y esperadas.
• No planear esfuerzos de prueba, asumiendo que no
se encontrará errores.
• El “testing” constituye una tarea creativa e
intelectualmente desafiante.
NIVELES DE PRUEBAS
• Unitario: Detecta errores en los datos, lógica y
algoritmos, participa los programadores y es usado el
método “Caja Blanca”
• Integración: Detecta errores de interfaces y relaciones
entre componentes, participa los programadores y es
usado los métodos “Caja Blanca, Top Down, Bottom
Up”
• Funcional: Detecta errores en la implementación de
requerimientos, participa los Testers y Analistas y se
usa el método funcional.
NIVELES DE PRUEBAS
• Sistema: Detecta fallas en el cubrimiento de los
requerimientos, participa los Testers y Analistas y se
usa el método funcional.
• Aceptación: Detecta fallas en la implementación del
sistemas, participa los Testers, Analistas y Cliente; y se
usa el método funcional.
MÉTODOS DE PRUEBAS
• Caja Negra: Realizar pruebas de forma que se
compruebe que cada función es operativa.
Los casos de prueba pretenden demostrar que las
funciones del software son operativas, que la entrada se
acepta de forma adecuada y que se produce una salida
correcta. Los tipos de prueba de mas relevantes son:
Prueba de partición equivalente
Prueba de análisis de valores límites
MÉTODOS DE PRUEBAS
• Caja Blanca Desarrollar pruebas de forma que se
asegure que la operación interna se ajusta a las
especificaciones, y que todos los componentes
internos se han probado de forma adecuada.
• Los tipos de prueba de Caja Blanca mas relevantes
son:
Prueba del camino básico.
Prueba de bucles
EJEMPLO CASO DE PRUEBA
• Diseñe los casos de prueba para la siguiente función:
char* LoadFile(char filePath[MAX_PATH], char* mode,
DWORD dwDesiredAccess, DWORD
dwCreationDisposition)
Antes de empezar a pensar que hacer, deben definir
una pequeña estrategia que debería responder al
menos cuatro preguntas 1-¿Qué se va a probar?, 2-
¿Desde cual perspectiva se va a probar?, 3-¿A qué nivel
se va a probar? y 4-¿con cuáles técnicas voy a probar?.
Responder las anteriores preguntas me da una visión
más clara del objetivo de mis pruebas.
EJEMPLO CASO DE PRUEBA
• Quién te encargó diseñar los casos de pruebas solo
debería contestarte la pregunta 1-¿Qué se va a
probar?, las demás debería definir el Analista y/o
programador.
• Se desea probar “los requerimientos funcionales, no
funcionales y la cobertura de código.” ¿Cuáles son los
requerimientos?
• “la función debe recibir una ruta de máximo 256
caracteres (mínimo 4 caracteres) y debe cargar de allí
el contenido del archivo en un vector. El contenido de
los archivos puede ser cualquier byte que se pueda
representar con un juego de caracteres ASCII”
EJEMPLO CASO DE PRUEBA
• Los requerimientos funcionales se prueban
usualmente a nivel de sistema.
• La perspectiva de pruebas será caja negra.
• Existen muchas técnicas para probar: Equivalence
Class Partitioning -ECP-, Boundary Value Analysis -
BVA- y Combinatorial (Pair wise) testing. Para nuestro
ejemplo utilizaremos una mezcla de las anteriores
técnicas.
• Aplicaremos ECP al parámetro 1 filePath porque
sabemos que puede ser cualquier cadena desde 4
hasta 256 caracteres de longitud.
MODELOS
• Modelo V: Describe la manera de aplicar
verificaciones y validaciones a los productos del SW.
PLAN DE PRUEBAS
• En esta actividad se inicia la definición del plan de
pruebas, el cual sirve como guía para la realización de
las pruebas, y permite verificar que el sistema de
información cumple las necesidades establecidas por
el usuario, con las debidas garantías de calidad.
• El plan de pruebas es un producto formal que define
los objetivos de la prueba de un sistema, establece y
coordina una estrategia de trabajo, y provee del
marco adecuado para elaborar una planificación paso
a paso de las actividades de prueba.
PLAN DE PRUEBAS
• El plan se inicia en el proceso Análisis del Sistema de
Información (ASI), definiendo el marco general, y
estableciendo los requisitos de prueba de aceptación,
relacionados directamente con la especificación de
requisitos.
• Dicho plan se va completando y detallando a medida
que se avanza en los restantes procesos del ciclo de
vida del software, Diseño del Sistema de Información,
Construcción del Sistema de Información e
Implantación y Aceptación del Sistema.
ACTIVIDADES DEL PLAN DE PRUEBAS
Definición del Alcance de las Pruebas.
• Es posible que determinados niveles de pruebas sean
especialmente críticos y otros no sean necesarios.
• Por ejemplo, puede haber grandes diferencias en
función de una solución de desarrollo completo o un
producto de mercado cerrado integrado con otros
sistemas.
• En esta tarea se especifican y justifican de los niveles
de pruebas a realizar, así como el marco general de
planificación de cada nivel de prueba
ACTIVIDADES DEL PLAN DE PRUEBAS
Definición de Requisitos del Entorno de Pruebas.
• La realización de las pruebas aconseja disponer de un entorno
de pruebas separado del entorno de desarrollo y del entorno
de operación. En esta tarea se especifican y justifican de los
niveles de pruebas a realizar, según el siguiente esquema:
- Definición de los perfiles implicados y Planificación temporal.
- Criterios de verificación y aceptación.
- Definición, generación y mantenimiento de verificaciones y
casos de prueba.
- Análisis y evaluación de los resultados
- Productos a entregar como resultado de la ejecución.
ACTIVIDADES DEL PLAN DE PRUEBAS
Definición de las Pruebas de Aceptación del Sistema.
• En esta tarea se realiza la especificación de las
pruebas de aceptación del sistema. Se debe insistir,
principalmente, en los criterios de aceptación del
sistema que sirven de base para asegurar que
satisface los requisitos exigidos.
• Los criterios de aceptación deben ser definidos
prestando especial atención a aspectos como:
- Procesos críticos del sistema.
- Rendimiento del sistema.
- Seguridad.
- Disponibilidad.
GRACIAS

Más contenido relacionado

Similar a 15_pruebaSW.ppt

Ingeniería del software 3
Ingeniería del software 3Ingeniería del software 3
Ingeniería del software 3enayluis
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas.. ..
 
INDUCCION A QA TESTER.pptx
INDUCCION A QA TESTER.pptxINDUCCION A QA TESTER.pptx
INDUCCION A QA TESTER.pptxOdalisLinares
 
03 gestión de pruebas de software diseño de casos de pruebas
03 gestión de pruebas de software   diseño de casos de pruebas03 gestión de pruebas de software   diseño de casos de pruebas
03 gestión de pruebas de software diseño de casos de pruebasAntonio Quiña
 
Aseguramiento De Calidad Mp
Aseguramiento De Calidad MpAseguramiento De Calidad Mp
Aseguramiento De Calidad MpZonar
 
Fases de prueba de software
Fases de prueba de softwareFases de prueba de software
Fases de prueba de softwareMarco Antonio
 
16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...
16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...
16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...Luis Fernando Aguas Bucheli
 
Ra semana 14 2
Ra semana 14 2Ra semana 14 2
Ra semana 14 2victdiazm
 
Presentacion Pruebas
Presentacion PruebasPresentacion Pruebas
Presentacion Pruebasdajigar
 
Trabajo de teoria de sistema 2
Trabajo de teoria de sistema 2Trabajo de teoria de sistema 2
Trabajo de teoria de sistema 2Darwis Gonzalez
 
Pruebas De Software
Pruebas De SoftwarePruebas De Software
Pruebas De Softwarearacelij
 
Aguirre Jimenez
Aguirre JimenezAguirre Jimenez
Aguirre JimenezFARIDROJAS
 
Norma iso 14598
Norma iso 14598Norma iso 14598
Norma iso 14598ehe ml
 

Similar a 15_pruebaSW.ppt (20)

Ingeniería del software 3
Ingeniería del software 3Ingeniería del software 3
Ingeniería del software 3
 
5. Métodos de Prueba de Software
5. Métodos de Prueba de Software5. Métodos de Prueba de Software
5. Métodos de Prueba de Software
 
Curso calidad software
Curso calidad softwareCurso calidad software
Curso calidad software
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas
 
INDUCCION A QA TESTER.pptx
INDUCCION A QA TESTER.pptxINDUCCION A QA TESTER.pptx
INDUCCION A QA TESTER.pptx
 
03 gestión de pruebas de software diseño de casos de pruebas
03 gestión de pruebas de software   diseño de casos de pruebas03 gestión de pruebas de software   diseño de casos de pruebas
03 gestión de pruebas de software diseño de casos de pruebas
 
Aseguramiento De Calidad Mp
Aseguramiento De Calidad MpAseguramiento De Calidad Mp
Aseguramiento De Calidad Mp
 
Fases de prueba de software
Fases de prueba de softwareFases de prueba de software
Fases de prueba de software
 
16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...
16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...
16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...
 
Calidad del software cap2
Calidad del software   cap2Calidad del software   cap2
Calidad del software cap2
 
S8-CDSQA.pptx
S8-CDSQA.pptxS8-CDSQA.pptx
S8-CDSQA.pptx
 
Ra semana 14 2
Ra semana 14 2Ra semana 14 2
Ra semana 14 2
 
Presentacion Pruebas
Presentacion PruebasPresentacion Pruebas
Presentacion Pruebas
 
Entregables de pruebas
Entregables de pruebasEntregables de pruebas
Entregables de pruebas
 
Trabajo de teoria de sistema 2
Trabajo de teoria de sistema 2Trabajo de teoria de sistema 2
Trabajo de teoria de sistema 2
 
Pruebas De Software
Pruebas De SoftwarePruebas De Software
Pruebas De Software
 
Practicas técnicas
Practicas técnicasPracticas técnicas
Practicas técnicas
 
Aguirre Jimenez
Aguirre JimenezAguirre Jimenez
Aguirre Jimenez
 
Norma iso 14598
Norma iso 14598Norma iso 14598
Norma iso 14598
 
S9-DAW-2022S1.pptx
S9-DAW-2022S1.pptxS9-DAW-2022S1.pptx
S9-DAW-2022S1.pptx
 

Último

LICENCIA DE CONSTRUCCION, Y EDIFICACIONES RESPECTO A LA LEY 29090.pptx
LICENCIA DE CONSTRUCCION, Y EDIFICACIONES RESPECTO A LA LEY 29090.pptxLICENCIA DE CONSTRUCCION, Y EDIFICACIONES RESPECTO A LA LEY 29090.pptx
LICENCIA DE CONSTRUCCION, Y EDIFICACIONES RESPECTO A LA LEY 29090.pptxLucindaMy
 
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...Arquitecto Alejandro Gomez cornejo muñoz
 
594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...
594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...
594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...humberto espejo
 
Tema 7 Plantas Industriales (2).pptx ingenieria
Tema 7 Plantas Industriales (2).pptx ingenieriaTema 7 Plantas Industriales (2).pptx ingenieria
Tema 7 Plantas Industriales (2).pptx ingenieriaLissetteMorejonLeon
 
Procedimientos constructivos superestructura, columnas
Procedimientos constructivos superestructura, columnasProcedimientos constructivos superestructura, columnas
Procedimientos constructivos superestructura, columnasAhmedMontaoSnchez1
 
Estudio de materiales asfalticos para utilizar en obras viales
Estudio de materiales asfalticos para utilizar en obras vialesEstudio de materiales asfalticos para utilizar en obras viales
Estudio de materiales asfalticos para utilizar en obras vialesRamonCortez4
 
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticasEJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticasEfrain Yungan
 
lean manufacturing and its definition for industries
lean manufacturing and its definition for industrieslean manufacturing and its definition for industries
lean manufacturing and its definition for industriesbarom
 
PLAN DE TRABAJO - CONTRATISTA CORIS.docx
PLAN DE TRABAJO - CONTRATISTA CORIS.docxPLAN DE TRABAJO - CONTRATISTA CORIS.docx
PLAN DE TRABAJO - CONTRATISTA CORIS.docxTAKESHISAC
 
Proyecto de Base de Datos de César Guzmán
Proyecto de Base de Datos de César GuzmánProyecto de Base de Datos de César Guzmán
Proyecto de Base de Datos de César Guzmáncesarguzmansierra751
 
JimyPomalaza vivienda rural huancavelica .pdf
JimyPomalaza vivienda rural huancavelica .pdfJimyPomalaza vivienda rural huancavelica .pdf
JimyPomalaza vivienda rural huancavelica .pdfJimyPomalaza
 
Descubrimiento de la penicilina en la segunda guerra mundial
Descubrimiento de la penicilina en la segunda guerra mundialDescubrimiento de la penicilina en la segunda guerra mundial
Descubrimiento de la penicilina en la segunda guerra mundialyajhairatapia
 
Introduccion-a-los-tipos-de-cemento (1).pdf
Introduccion-a-los-tipos-de-cemento (1).pdfIntroduccion-a-los-tipos-de-cemento (1).pdf
Introduccion-a-los-tipos-de-cemento (1).pdfjhorbycoralsanchez
 
Informe Mensual MARZO DE SUPERVISION.docx
Informe Mensual MARZO DE SUPERVISION.docxInforme Mensual MARZO DE SUPERVISION.docx
Informe Mensual MARZO DE SUPERVISION.docxTAKESHISAC
 
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023ANDECE
 
Diseño de un aerogenerador de 400w de eje vertical
Diseño de un aerogenerador de 400w de eje verticalDiseño de un aerogenerador de 400w de eje vertical
Diseño de un aerogenerador de 400w de eje verticalEfrain Yungan
 
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTACUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTAvanessaecharry2511
 
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdfS454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdffredyflores58
 

Último (20)

LICENCIA DE CONSTRUCCION, Y EDIFICACIONES RESPECTO A LA LEY 29090.pptx
LICENCIA DE CONSTRUCCION, Y EDIFICACIONES RESPECTO A LA LEY 29090.pptxLICENCIA DE CONSTRUCCION, Y EDIFICACIONES RESPECTO A LA LEY 29090.pptx
LICENCIA DE CONSTRUCCION, Y EDIFICACIONES RESPECTO A LA LEY 29090.pptx
 
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
 
594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...
594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...
594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...
 
Tema 7 Plantas Industriales (2).pptx ingenieria
Tema 7 Plantas Industriales (2).pptx ingenieriaTema 7 Plantas Industriales (2).pptx ingenieria
Tema 7 Plantas Industriales (2).pptx ingenieria
 
Procedimientos constructivos superestructura, columnas
Procedimientos constructivos superestructura, columnasProcedimientos constructivos superestructura, columnas
Procedimientos constructivos superestructura, columnas
 
Linea del tiempo de la inteligencia artificial.pptx
Linea del tiempo de la inteligencia artificial.pptxLinea del tiempo de la inteligencia artificial.pptx
Linea del tiempo de la inteligencia artificial.pptx
 
presentación manipulación manual de cargas sunafil
presentación manipulación manual de cargas sunafilpresentación manipulación manual de cargas sunafil
presentación manipulación manual de cargas sunafil
 
Estudio de materiales asfalticos para utilizar en obras viales
Estudio de materiales asfalticos para utilizar en obras vialesEstudio de materiales asfalticos para utilizar en obras viales
Estudio de materiales asfalticos para utilizar en obras viales
 
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticasEJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
 
lean manufacturing and its definition for industries
lean manufacturing and its definition for industrieslean manufacturing and its definition for industries
lean manufacturing and its definition for industries
 
PLAN DE TRABAJO - CONTRATISTA CORIS.docx
PLAN DE TRABAJO - CONTRATISTA CORIS.docxPLAN DE TRABAJO - CONTRATISTA CORIS.docx
PLAN DE TRABAJO - CONTRATISTA CORIS.docx
 
Proyecto de Base de Datos de César Guzmán
Proyecto de Base de Datos de César GuzmánProyecto de Base de Datos de César Guzmán
Proyecto de Base de Datos de César Guzmán
 
JimyPomalaza vivienda rural huancavelica .pdf
JimyPomalaza vivienda rural huancavelica .pdfJimyPomalaza vivienda rural huancavelica .pdf
JimyPomalaza vivienda rural huancavelica .pdf
 
Descubrimiento de la penicilina en la segunda guerra mundial
Descubrimiento de la penicilina en la segunda guerra mundialDescubrimiento de la penicilina en la segunda guerra mundial
Descubrimiento de la penicilina en la segunda guerra mundial
 
Introduccion-a-los-tipos-de-cemento (1).pdf
Introduccion-a-los-tipos-de-cemento (1).pdfIntroduccion-a-los-tipos-de-cemento (1).pdf
Introduccion-a-los-tipos-de-cemento (1).pdf
 
Informe Mensual MARZO DE SUPERVISION.docx
Informe Mensual MARZO DE SUPERVISION.docxInforme Mensual MARZO DE SUPERVISION.docx
Informe Mensual MARZO DE SUPERVISION.docx
 
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
 
Diseño de un aerogenerador de 400w de eje vertical
Diseño de un aerogenerador de 400w de eje verticalDiseño de un aerogenerador de 400w de eje vertical
Diseño de un aerogenerador de 400w de eje vertical
 
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTACUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
 
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdfS454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
 

15_pruebaSW.ppt

  • 1. Prueba del Software Docente: Jesús Ulloa Ninahuamán
  • 2. INTRODUCCIÓN • Definición 1: La prueba (testing) es el proceso de ejecutar un programa con la intención de encontrar fallos. • Un buen caso de prueba es el que tiene alta probabilidad de detectar un nuevo error. • Un caso de prueba con éxito es el que detecta un error nuevo.
  • 3. INTRODUCCIÓN • Definición 2: Una investigación técnica del producto bajo prueba para proporcionar a los interesados (stakeholders) información relacionada con la calidad. • Para el efecto se tiene establecido las fases, como prueba de calidad de software.
  • 4. INTRODUCCIÓN EJEMPLO: Especificación: • Un programa lee tres valores enteros desde la pantalla. • Los tres valores son interpretados de forma que representan las longitudes de los tres lados de un triángulo. • El programa muestra un mensaje que indica si el triángulo es escaleno (todos los lados distintos), isósceles (dos iguales) o equilátero (todos iguales) Problema: • Escribir el conjunto de casos de prueba que se consideren adecuados para probar este programa.
  • 5. DEFINICIONES • Error: Una equivocación de una persona al desarrollar alguna actividad de desarrollo del software. • Defecto: Se produce cuando el software presenta algún error (vista interna detectado por desarrolladores). • Falla: Es un desvío respecto del comportamiento esperado del sistema (vista externa, detectado por los usuarios).
  • 6.
  • 7. PRINCIPIOS Los principios más relevantes son los siguientes: • Un programador debe evitar probar su propio desarrollo. • Una organización, no debe probar sus propios desarrollos. • Los test deben incluir entradas inválidas e inesperadas, así como las válidas y esperadas. • No planear esfuerzos de prueba, asumiendo que no se encontrará errores. • El “testing” constituye una tarea creativa e intelectualmente desafiante.
  • 8. NIVELES DE PRUEBAS • Unitario: Detecta errores en los datos, lógica y algoritmos, participa los programadores y es usado el método “Caja Blanca” • Integración: Detecta errores de interfaces y relaciones entre componentes, participa los programadores y es usado los métodos “Caja Blanca, Top Down, Bottom Up” • Funcional: Detecta errores en la implementación de requerimientos, participa los Testers y Analistas y se usa el método funcional.
  • 9. NIVELES DE PRUEBAS • Sistema: Detecta fallas en el cubrimiento de los requerimientos, participa los Testers y Analistas y se usa el método funcional. • Aceptación: Detecta fallas en la implementación del sistemas, participa los Testers, Analistas y Cliente; y se usa el método funcional.
  • 10. MÉTODOS DE PRUEBAS • Caja Negra: Realizar pruebas de forma que se compruebe que cada función es operativa. Los casos de prueba pretenden demostrar que las funciones del software son operativas, que la entrada se acepta de forma adecuada y que se produce una salida correcta. Los tipos de prueba de mas relevantes son: Prueba de partición equivalente Prueba de análisis de valores límites
  • 11. MÉTODOS DE PRUEBAS • Caja Blanca Desarrollar pruebas de forma que se asegure que la operación interna se ajusta a las especificaciones, y que todos los componentes internos se han probado de forma adecuada. • Los tipos de prueba de Caja Blanca mas relevantes son: Prueba del camino básico. Prueba de bucles
  • 12. EJEMPLO CASO DE PRUEBA • Diseñe los casos de prueba para la siguiente función: char* LoadFile(char filePath[MAX_PATH], char* mode, DWORD dwDesiredAccess, DWORD dwCreationDisposition) Antes de empezar a pensar que hacer, deben definir una pequeña estrategia que debería responder al menos cuatro preguntas 1-¿Qué se va a probar?, 2- ¿Desde cual perspectiva se va a probar?, 3-¿A qué nivel se va a probar? y 4-¿con cuáles técnicas voy a probar?. Responder las anteriores preguntas me da una visión más clara del objetivo de mis pruebas.
  • 13. EJEMPLO CASO DE PRUEBA • Quién te encargó diseñar los casos de pruebas solo debería contestarte la pregunta 1-¿Qué se va a probar?, las demás debería definir el Analista y/o programador. • Se desea probar “los requerimientos funcionales, no funcionales y la cobertura de código.” ¿Cuáles son los requerimientos? • “la función debe recibir una ruta de máximo 256 caracteres (mínimo 4 caracteres) y debe cargar de allí el contenido del archivo en un vector. El contenido de los archivos puede ser cualquier byte que se pueda representar con un juego de caracteres ASCII”
  • 14. EJEMPLO CASO DE PRUEBA • Los requerimientos funcionales se prueban usualmente a nivel de sistema. • La perspectiva de pruebas será caja negra. • Existen muchas técnicas para probar: Equivalence Class Partitioning -ECP-, Boundary Value Analysis - BVA- y Combinatorial (Pair wise) testing. Para nuestro ejemplo utilizaremos una mezcla de las anteriores técnicas. • Aplicaremos ECP al parámetro 1 filePath porque sabemos que puede ser cualquier cadena desde 4 hasta 256 caracteres de longitud.
  • 15. MODELOS • Modelo V: Describe la manera de aplicar verificaciones y validaciones a los productos del SW.
  • 16. PLAN DE PRUEBAS • En esta actividad se inicia la definición del plan de pruebas, el cual sirve como guía para la realización de las pruebas, y permite verificar que el sistema de información cumple las necesidades establecidas por el usuario, con las debidas garantías de calidad. • El plan de pruebas es un producto formal que define los objetivos de la prueba de un sistema, establece y coordina una estrategia de trabajo, y provee del marco adecuado para elaborar una planificación paso a paso de las actividades de prueba.
  • 17. PLAN DE PRUEBAS • El plan se inicia en el proceso Análisis del Sistema de Información (ASI), definiendo el marco general, y estableciendo los requisitos de prueba de aceptación, relacionados directamente con la especificación de requisitos. • Dicho plan se va completando y detallando a medida que se avanza en los restantes procesos del ciclo de vida del software, Diseño del Sistema de Información, Construcción del Sistema de Información e Implantación y Aceptación del Sistema.
  • 18. ACTIVIDADES DEL PLAN DE PRUEBAS Definición del Alcance de las Pruebas. • Es posible que determinados niveles de pruebas sean especialmente críticos y otros no sean necesarios. • Por ejemplo, puede haber grandes diferencias en función de una solución de desarrollo completo o un producto de mercado cerrado integrado con otros sistemas. • En esta tarea se especifican y justifican de los niveles de pruebas a realizar, así como el marco general de planificación de cada nivel de prueba
  • 19. ACTIVIDADES DEL PLAN DE PRUEBAS Definición de Requisitos del Entorno de Pruebas. • La realización de las pruebas aconseja disponer de un entorno de pruebas separado del entorno de desarrollo y del entorno de operación. En esta tarea se especifican y justifican de los niveles de pruebas a realizar, según el siguiente esquema: - Definición de los perfiles implicados y Planificación temporal. - Criterios de verificación y aceptación. - Definición, generación y mantenimiento de verificaciones y casos de prueba. - Análisis y evaluación de los resultados - Productos a entregar como resultado de la ejecución.
  • 20. ACTIVIDADES DEL PLAN DE PRUEBAS Definición de las Pruebas de Aceptación del Sistema. • En esta tarea se realiza la especificación de las pruebas de aceptación del sistema. Se debe insistir, principalmente, en los criterios de aceptación del sistema que sirven de base para asegurar que satisface los requisitos exigidos. • Los criterios de aceptación deben ser definidos prestando especial atención a aspectos como: - Procesos críticos del sistema. - Rendimiento del sistema. - Seguridad. - Disponibilidad.