Departamento de Lenguajes y Sistemas
Informáticos
Escuela Técnica Superior de Ingeniería Informática
Universidad de Sevilla
Avda Reina Mercedes, s/n. 41012 SEVILLA
Fax : 95 455 71 39. Tlf: 95 455 71 39.
E-mail:
[email protected]
Generación de pruebas de sistema a
partir de la especificación funcional
Universidad de Sevilla
Lenguajes y Sistemas Informáticos
España
Javier Jesús Gutiérrez
Tutores:
Doctor D. Manuel Mejías Risoto.
Doctora Dña. María José Escalona Cuaresma.
En Sevilla, Julio de 2.005
Generación de pruebas de sistema a partir de la especificación funcional
2
Departamento de Lenguajes y Sistemas Informáticos – Universidad de Sevilla
Generación de pruebas de sistema a partir de la especificación funcional
3
Presentación del informe de investigación.
El aumento de la complejidad de los sistemas software pone de manifiesto la
necesidad de garantizar la calidad de dichos sistemas. En el contexto de este trabajo
definimos calidad como la adecuación del software a sus requisitos.
En este informe de investigación proponemos el uso de las pruebas de sistema
como herramienta para verificar el cumplimiento de la especificación funcional de un
sistema y asegurar su calidad. En las secciones 1 y 2 se definen las pruebas de sistema y
se exponen las ventajas de contar con propuestas que indiquen cómo obtener un
conjunto de pruebas adecuadas y permitan automatizar este proceso.
Loa puntos principales de este informe de investigación, secciones 3, 4 y 5,
describen un análisis comparativo de las propuestas existentes para guiar la generación
de casos de prueba del sistema. Las conclusiones de este análisis, recogidas en las
secciones 6 y 7, permiten establecer el nivel de detalle y madurez de estas propuestas,
así como sentar las bases para un futuro trabajo de investigación.
Por último, la sección 8 resume las publicaciones, congresos, institutos y grupos
de investigación más relevantes en la investigación sobre generación de casos de prueba
Departamento de Lenguajes y Sistemas Informáticos – Universidad de Sevilla
Generación de pruebas de sistema a partir de la especificación funcional
4
Departamento de Lenguajes y Sistemas Informáticos – Universidad de Sevilla
5
Generación de pruebas de sistema a partir de la especificación funcional
Índice:
Presentación del informe de investigación. ...................................................................... 3
1. Introducción. ............................................................................................................... 11
1.1. Definición de las pruebas software...................................................................... 11
1.2. Un proceso de prueba del software...................................................................... 13
2. Planteamiento del problema. ...................................................................................... 15
2.1. Problemas de las pruebas manuales..................................................................... 15
2.2. Calidad del conjunto de pruebas......................................................................... 16
2.3. Costes del proceso de prueba............................................................................... 17
2.4. Acotación del problema de búsqueda. ................................................................. 20
3. Estudio de la situación actual. .................................................................................... 23
3.1. Automated Test Case Generation from Dynamic Models................................... 24
3.2. Requirements by Contract ................................................................................... 29
3.3. Testing From Use Cases Using Path Analysis Technique................................... 32
3.4. Test Cases From Use Cases. ................................................................................ 35
3.5. PLUTO y Category Partition Method.................................................................. 37
3.6. SCENario-Based Validation and Test of Software (SCENT) ............................. 41
3.7. TOTEM................................................................................................................ 45
3.8. Requirement Base Testing................................................................................... 50
3.9. Extended Use Case Test Design Pattern.............................................................. 53
3.10. Software Requirements and Acceptance Testing. ............................................. 56
3.11. Use Case Derived Test Cases. ........................................................................... 60
3.12. A Model-based Approach to Improve System Testing of Interactive
Applications ................................................................................................................ 62
3.13. Propuestas descartadas....................................................................................... 65
3.13.1. AGEDIS...................................................................................................... 65
3.13.2. Verificación con XML................................................................................ 66
3.13.3. Automatic Test Case Generation for RAISE.............................................. 67
3.13.4. Trabajos de investigación del profesor Jeff Offut ...................................... 67
4. Un caso práctico. ........................................................................................................ 69
4.1. Descripción de los casos de uso........................................................................... 69
4.2. Generación del conjunto de pruebas aplicando Automated Test Case Generation
from Dynamic Models................................................................................................ 72
4.3. Generación del conjunto de pruebas aplicando Requirements by Contract ........ 76
4.4. Generación del conjunto de pruebas aplicando Use Case Path Analysis. ........... 81
4.5. Generación del conjunto de pruebas aplicando Generating Test Cases from Use
Cases........................................................................................................................... 85
4.6. Generación del conjunto de pruebas aplicando PLUTO y Category-Partition
Method........................................................................................................................ 88
4.7. Generación del conjunto de pruebas aplicando SCENT. ..................................... 90
4.8. Generación del conjunto de pruebas aplicando TOTEM. ................................... 94
4.9. Generación del conjunto de pruebas aplicando Extended Use Cases Test Design
Pattern. ........................................................................................................................ 99
4.10. Generación del conjunto de pruebas aplicando Software Requirements and
Acceptance Testing................................................................................................... 101
4.11. Generación del conjunto de pruebas aplicando Use Case Derived Test Cases 102
4.12. Generación del conjunto de pruebas aplicando A Model-based Approach to
Improve System Testing of Interactive Applications ............................................... 103
Departamento de Lenguajes y Sistemas Informáticos – Universidad de Sevilla
Generación de pruebas de sistema a partir de la especificación funcional
6
4.13. Resumen de los resultados obtenidos. ............................................................ 104
4.13.1 Automated Test Case Generation from Dynamic Models......................... 105
4.13.2. Requirements by Contract ........................................................................ 105
4.13.3. Use Cases Using Path Analysis Technique .............................................. 106
4.13.4. Test cases form Use Cases........................................................................ 107
4.13.5. PLUTO y Category Partition Method....................................................... 107
4.13.6. SCENario-Based Validation and Test of Software (SCENT) .................. 107
4.13.7. TOTEM..................................................................................................... 108
4.13.8. Extended Use Case Test Design Pattern................................................... 109
4.13.9. Use Case Derived Test Cases. .................................................................. 110
5. Análisis de la situación actual................................................................................... 111
5.1. Comparativa de propuestas. ............................................................................... 111
5.2. Análisis de los casos prácticos........................................................................... 117
5.2.1. ATCGDM. .................................................................................................. 117
5.2.2. RBC. ........................................................................................................... 117
5.2.3. UCPA.......................................................................................................... 118
5.2.4. TCUC.......................................................................................................... 119
5.2.5. PLUTO y Category Partition Method......................................................... 119
5.2.6. SCENT........................................................................................................ 119
5.2.7. TOTEM....................................................................................................... 120
5.2.8.
Comentarios de: Generación de pruebas de sistema a partir de la especificación funcional (0)
No hay comentarios