Enfoque dirigido por modelos para probar Sistemas de Información con Bases de Datos

16
Universidad de Castilla-La Mancha Federico Toledo Beatriz Pérez Macario Polo Enfoque dirigido por modelos para probar Sistemas de Información con Bases de Datos Abstracta (Uruguay)

Transcript of Enfoque dirigido por modelos para probar Sistemas de Información con Bases de Datos

Universidad de Castilla-La Mancha

Federico Toledo

Beatriz Pérez

Macario Polo

Enfoque dirigido por modelos para

probar Sistemas de Información con

Bases de Datos

Abstracta (Uruguay)

2

1. Introducción a la Propuesta

2. Diseño de Casos de Prueba

3. Conclusiones y Trabajo Futuro

Contenido

Introducción a la Propuesta

Framework para probar Sistemas de Información con

Bases de Datos

3

Introducción a la Propuesta

4

Test cases

Test data

Sistemas de Información

Entidades y relaciones

CRUD: create, read, update, delete

5

Framework

(2) Pattern-matching

Test Suites

Test Cases

Datapools

Entities

Relations

Attributes

Rules

DB

(1) Reverse

Engineering

xUnit

Test Cases

UML Data

Modeling Profile UML Testing Profile

QVT

MOFM2T (3) Test code

generation

6

Framework

(1) Reverse

Engineering

QVT

Diseño de Casos de Prueba

7

Criterio de Cobertura

• Basado en distintos criterios de

cobertura

CRUD, para una entidad sería según la

expresión regular (máquina de estados):

• C . R . [ Ui . Ri ] * D . R

Patrones de diagramas de clase

(Andrews et al.)

• AEM (association-end multiplicity)

• GN (generalization)

• CA (class attribute)

8

• Identificamos distintos tipos de relaciones

• Queremos probar las operaciones

Crear

Leer

Actualizar

Borrar

• Los resultados esperados son conocidos

9

Criterio de Cobertura

Resultados Esperados

Table1 Expected result

One column invalid Fail

All columns valid Pass

… …

10

De acuerdo a los datos en los distintos campos

Resultados Esperados

• De acuerdo a las estructuras

Máquina de estados

T2_create

T1_create T1_create

T2_create

T2_create

T2_delete

T2_delete

T1_delete T1_delete

T2_update

11

Subestructura interesante

Casos de prueba a generar

Modelo de Pruebas Modelo de Datos

Motor QVT

Criterio 1 Criterio 2

Criterio 3

Cada criterio de cobertura

representado por conjunto

de reglas QVT

Criterios de Cobertura

Conclusiones

13

14

• Model-driven approach

• Basado en estándares

UML

• UML Data Modeling Profile

• UML Testing Profile

QVT

MOFM2T

• Especial atención en cubrir las

estructuras de datos

Conclusiones

15

• Terminar la implementación del

framework

Transformaciones QVT y MOFM2T

• Validación empírica

Sistemas “desarrollados a mano”

• Java, PHP, etc., con bases de datos

Sistemas desarrollados con MDD

• Ejemplo: GeneXus

– Herramienta MDD que genera código a partir de

estructuras de datos

– Genera aplciaciones en distintas plataformas

(client/server, web, mobile, RPG, etc.)

Trabajo Futuro

Agradecimientos:

([email protected])

([email protected])

([email protected])

Enfoque dirigido por modelos para probar Sistemas de

Información con Bases de Datos

Federico Toledo

Beatriz Pérez

Macario Polo

¡Gracias por su atención!

¿Preguntas?