1 of 17
•Haga clic para modificar el estilo de subtítulo del patrón
Ajhsia
MAEB 2013
Generación de Secuencias de Pruebas
F...
2 of 17MAEB 2013 2/25
Contenidos
3
Introducción
Problema de la Secuencia de Pruebas
Algoritmos de Resolución
Experimentos
...
3 of 17MAEB 2013 3/25
•Necesidad de la fase de pruebas
•Alrededor del 50% del presupuesto total
•Automatización de la fase...
4 of 17MAEB 2013 4/25
•Combinatorial Interaction Testing es …
•Un técnica para pruebas funcionales (black box)
•Efectiva p...
5 of 17MAEB 2013 5/25
•Pruebas tradicionales: Casos de prueba independientes
•Secuencias de Pruebas: Estado del SUT (Softw...
6 of 17MAEB 2013 6/25
•Classification Tree Method: identificar casos de prueba para
pruebas funcionales. Diseño del árbol ...
7 of 17MAEB 2013 7/25
•Cobertura de Clases: Todas las clases deben estar
presentes en la secuencia
Problema Secuencia de P...
8 of 17MAEB 2013 8/25
•Cobertura de Clases: Todas las clases deben estar
presentes en la secuencia
•Cobertura de Transicio...
9 of 17MAEB 2013 9/25
Algoritmos de Resolución
• Generación automática de test suites
• Herramienta Real: CTE XL Proffessi...
10 of 17MAEB 2013 10/25
•Individuo: Representa la transición seleccionada
•Evaluación:
•Parte del estado inicial (starting...
11 of 17MAEB 2013 11/25
•Recombinación: No se ejecuta
•Mutación: Probabilidad de mutación adaptativa (m1-m2)
Generador Gen...
12 of 17MAEB 2013 12/25
•Modificaciones:
•Nos interesa el camino completo
•No tenemos nodos finales, todos son objetivos
•...
13 of 17MAEB 2013 13/25
Experimentos: Benchmark
Programa Clases Transiciones Minima Completa
Keyboard 5 8 2 4
Microwave 19...
14 of 17MAEB 2013 14/25
Experimentos: Resultados Cobertura Clases
Programa GA ACO Voraz
Keyboard 2 2 2
Microwave 8* 8* 9
A...
15 of 17MAEB 2013 15/25
Experimentos: Cobertura Clases Vs Tamaño
16 of 17MAEB 2013 16/25
Experimentos: Resultados Cobertura Transiciones
Programa GA ACO Voraz
Keyboard 5 5 5
Microwave 17 ...
17 of 17MAEB 2013 17/25
Experimentos: Cobertura Transiciones Vs Tamaño
18 of 17MAEB 2013 18/25
Conclusiones y Trabajo Futuro
Introducción
Sistemas de Alta Variabilidad
Generador de Escenarios d...
19 of 17MAEB 2013 19/25
Gracias por su atención
Javier Ferrer: ferrer@lcc.uma.es
http://neo.lcc.uma.es/
Generación de Secu...
Próxima SlideShare
Cargando en…5
×

Generación de secuencias de pruebas funcionales con algorithmos bio-inspirados

62 visualizaciones

Publicado el

Presentación MAEB 2015

Publicado en: Software
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Generación de secuencias de pruebas funcionales con algorithmos bio-inspirados

  1. 1. 1 of 17 •Haga clic para modificar el estilo de subtítulo del patrón Ajhsia MAEB 2013 Generación de Secuencias de Pruebas Funcionales con Algoritmos Bio-inspirados Javier Ferrer Peter M. Kruse Enrique Alba Francisco Chicano ferrer@lcc.uma.es peter.kruse@berner-matter.com eat@lcc.uma.es chicano@lcc.uma.es
  2. 2. 2 of 17MAEB 2013 2/25 Contenidos 3 Introducción Problema de la Secuencia de Pruebas Algoritmos de Resolución Experimentos Conclusiones 1 2 5 Introducción Sistemas de Alta Variabilidad Generador de Escenarios de Test Validación Experimental Conclusiones 4
  3. 3. 3 of 17MAEB 2013 3/25 •Necesidad de la fase de pruebas •Alrededor del 50% del presupuesto total •Automatización de la fase de pruebas •Generación datos + salida (oráculo) •No hay recursos para pruebas exhaustivas -> Tamaño Introducción 1,0; 2,3 1,0; 2,3 10,5¡Good! 2,7; 5,4 ¡Error! 2,7; 5,4 15,1
  4. 4. 4 of 17MAEB 2013 4/25 •Combinatorial Interaction Testing es … •Un técnica para pruebas funcionales (black box) •Efectiva para detectar fallos causado por interacciones de parámetros. •Se identifican los aspectos más relevantes (parámetros) y se definen sus correspondientes clases (valores de los parámetros) •Un caso de prueba es un conjunto de n valores, uno por cada parámetro Introducción: Combinatorial Interaction Testing
  5. 5. 5 of 17MAEB 2013 5/25 •Pruebas tradicionales: Casos de prueba independientes •Secuencias de Pruebas: Estado del SUT (Software Under Test) •Objetivo: Probar los todos los estados y transiciones Introducción: Secuencias de Pruebas Aceleración (40 Km/h) Girar y Acelerar (100 Km/h) Frenar (ABS) Fallo!
  6. 6. 6 of 17MAEB 2013 6/25 •Classification Tree Method: identificar casos de prueba para pruebas funcionales. Diseño del árbol + casos de prueba •Extensión CTM: Añadir transiciones entre clases •Secuencia de pruebas: lista ordenada de casos de prueba con el objetivo de probar toda la funcionalidad. Problema Secuencia de Pruebas: CTM
  7. 7. 7 of 17MAEB 2013 7/25 •Cobertura de Clases: Todas las clases deben estar presentes en la secuencia Problema Secuencia de Pruebas: Cobertura
  8. 8. 8 of 17MAEB 2013 8/25 •Cobertura de Clases: Todas las clases deben estar presentes en la secuencia •Cobertura de Transiciones: Todas las transiciones posibles deben ser tomadas Problema Secuencia de Pruebas: Cobertura
  9. 9. 9 of 17MAEB 2013 9/25 Algoritmos de Resolución • Generación automática de test suites • Herramienta Real: CTE XL Proffessional
  10. 10. 10 of 17MAEB 2013 10/25 •Individuo: Representa la transición seleccionada •Evaluación: •Parte del estado inicial (startingGame, running) •Consume transiciones del vector Generador Genético de Secuencias de Pruebas 1 1 1 2 2 5 2 1 3 1
  11. 11. 11 of 17MAEB 2013 11/25 •Recombinación: No se ejecuta •Mutación: Probabilidad de mutación adaptativa (m1-m2) Generador Genético de Secuencias de Pruebas 1 1 1 2 2 5 2 1 3 1 m1=0,05 m2=0,25 1 2 3 4 5 6 7 4 9 7 5 6 4 5 5 5 4 4 5 2 1 1 1 2 2 3 5 6 4 5 5 5 6 4 5 4 5 5 5 4 4 5 2 5 6 4 5 5 5 6 4 5 5 5 6 4 5 5 5 1 2 5 4 4 5 2 1 1 3 4 5 6 7 2 9 7 5 6 4 5 5 4 4 5 2 1
  12. 12. 12 of 17MAEB 2013 12/25 •Modificaciones: •Nos interesa el camino completo •No tenemos nodos finales, todos son objetivos •Heurística: •Selecciona una candidata del conjunto de las disponibles •Guía la búsqueda hacia regiones inexploradas Generador de Secuencias con ACO Valor: 90 Valor: 120
  13. 13. 13 of 17MAEB 2013 13/25 Experimentos: Benchmark Programa Clases Transiciones Minima Completa Keyboard 5 8 2 4 Microwave 19 23 7 56 Autoradio 20 35 11 66 Citizen 62 74 31 3121 Coffee Machine 21 28 9 81 Communication 10 12 7 7 Elevator 13 18 5 80 Tetris 11 18 10 10 Mealy Moore 5 11 5 5 Fuel Control 5 27 5 600 Transmission 7 12 4 12 Aircraft 24 20 5 625
  14. 14. 14 of 17MAEB 2013 14/25 Experimentos: Resultados Cobertura Clases Programa GA ACO Voraz Keyboard 2 2 2 Microwave 8* 8* 9 Autoradio 13,30* 14 13* Citizen 39,47* 36** 47 Coffee Machine 9 9 9 Communication 7 7 7 Elevator 6 6 6 Tetris 12* 12* 15 Mealy Moore 5 5 5 Fuel Control 5 5 5 Transmission 4 4 4 Aircraft 4 (86,20%) 4 (86,20%) 4 (86,20%) *Diferencia significativa con el peor resultado **Diferencia significativa con los otros dos resultados
  15. 15. 15 of 17MAEB 2013 15/25 Experimentos: Cobertura Clases Vs Tamaño
  16. 16. 16 of 17MAEB 2013 16/25 Experimentos: Resultados Cobertura Transiciones Programa GA ACO Voraz Keyboard 5 5 5 Microwave 17 17 17 Autoradio 36,30 36 36 Citizen 75,27 (99,90%) 64,17 51(92,70%) Coffee Machine 19 19 18** Communication 16* 16* 17 Elevator 9 9 9 Tetris 31 31 31 Mealy Moore 24 24 24 Fuel Control 11* 11* 12 Transmission 9 9 9 Aircraft 7 (2) 7 (2) 7 (2) *Diferencia significativa con el peor resultado **Diferencia significativa con los otros dos resultados
  17. 17. 17 of 17MAEB 2013 17/25 Experimentos: Cobertura Transiciones Vs Tamaño
  18. 18. 18 of 17MAEB 2013 18/25 Conclusiones y Trabajo Futuro Introducción Sistemas de Alta Variabilidad Generador de Escenarios de Test Validación Experimental Conclusiones Contribuciones:  Extendemos el CTM para posibilitar la generación de secuencias  Experimentamos con 12 modelos de programas y 3 algoritmos con cobertura de clases y transiciones. Resultados: Las técnicas bio-inspiradas son significativamente mejores, especialmente en el programa más complejo. El ACO es el mejor algoritmo de la comparación Trabajo Futuro: Criterios de cobertura t-wise t≥2 para secuencias. Aplicar prioridades a las clases del modelo. Explorar algoritmos de trayectoria como Simulated Annealing.
  19. 19. 19 of 17MAEB 2013 19/25 Gracias por su atención Javier Ferrer: ferrer@lcc.uma.es http://neo.lcc.uma.es/ Generación de Secuencias de Pruebas Funcionales con Algoritmos Bio-inspirados FINAL

×