PDF de programación - Pruebas SQL, NoSQL y Multidispositivo

Imágen de pdf Pruebas SQL, NoSQL y Multidispositivo

Pruebas SQL, NoSQL y Multidispositivográfica de visualizaciones

Publicado el 9 de Abril del 2019
599 visualizaciones desde el 9 de Abril del 2019
1,2 MB
14 paginas
Creado hace 4a (25/06/2015)
Pruebas SQL, NoSQL
y Multidispositivo

Javier Tuya

Universidad de Oviedo
Grupo de Investigación en Ingeniería del Software (GIIS)
http://giis.uniovi.es/

Alianza Española de Innovación en Software Testing
Sevilla, 16 de Marzo de 2015

Qué hacemos

GIIS (Grupo de Investigación
en Ingeniería del Software)

 Pruebas de Aplicaciones con Bases

de datos
 Evaluación, generación, reducción

 Pruebas con tecnologías usadas en

Big Data
 Almacenamiento (NoSQL)

 Procesamiento (MapReduce)

 Estándares (ISO/IEC/IEEE 29119)

 Formación

 Pruebas Multidispositivo (con

UbiqWare)

Acknowledgements:
Test4SOA - Techniques for Functional
Testing in Service Oriented
Architectures (TIN2007-67843-C06-
01)
Test4DBS - Test methods for
applications with databases and
services (TIN2010-20057-C03-01)

Acknowledgements:
PERTEST - Testing of data persistence
and user perspective for new
paradigms (TIN2013-46928-C3-1-R)

J. Tuya (2015)

Pruebas SQL y NoSQL

2

Puedes conocer la cobertura de
las pruebas de tu aplicación

Un fragmento simple de un programa Java…

El salario es calculado como un salario base más el promedio de los
bonus generados por los proyectos en los que el empleado ha participado

Ejecutando esta función se cubren

todas las ramas

100% de cobertura?

J. Tuya (2015)

Pruebas SQL y NoSQL

3

... y la cobertura de tus SQL?

Qué pasa si…

… Todos los proyectos asignados a un

empleado dado tienen bonus > 0?

El promedio de
bonus es correcto

… Algún proyecto asignado

tiene bonus = 0?

… Todos los proyectos asignados

tienen bonus = 0?

… El empleado no está

asignado a ningún
proyecto?

El promedio de bonus
NO es correcto

La sentencia SQL NO
devuelve filas:
RuntimeException

J. Tuya (2015)

Pruebas SQL y NoSQL

4

... and your SQL test coverage?

Cómo plantearíamos la prueba?

Identificar las diferentes situaciones que pueden
ocurrir (Test Coverage Items según ISO/IEC/IEEE
29119) y Preparar la Base de Datos de Prueba

Para estas tareas Test4Data proporciona
automatización como ayuda al
desarrollador y al tester

+

J. Tuya (2015)

Pruebas SQL y NoSQL

5

(1) Herramientas

test4data.com
giis.uniovi.es/tools/

Técnica/Criterio
de prueba

Generación
BD pruebas

SQL

(filas generadas)

BD

Producción

Aplicación

BD

Pruebas

(filas seleccionadas)

SQL

Reducción
BD pruebas

SQLFpc/SQLRules (web, ws / Java)


Identifica Situaciones
de interés a probar

• Evalúa cobertura

respecto BD de pruebas

QAGrow
• Crea nuevas filas y las

(Java)

inserta en la BD de pruebas

• Para alcanzar la cobertura

SQLFpc

QAShrink


Inserta en la BD de pruebas
filas de la BD de producción

(Java)

• Para alcanzar la cobertura

SQLFpc

• Minimizando el tamaño de la BD

J. Tuya (2015)

Pruebas SQL y NoSQL

7

(2) Entrenamiento (SQLTest)
http://in2test.lsi.uniovi.es/sqltest/

 Objetivo: Realizar pruebas EFECTIVAS

 Facilidad para

introducir datos
de prueba y
casos

 Evaluación

automática de la
efectividad de las
pruebas

 Comparación con

otros
participantes y
ranking

J. Tuya (2015)

Pruebas SQL y NoSQL

9

(3) Testing en el mundo Big Data

Online
Applic.

Other
Data

Sources

Relational Model

Star Model

Busines Intelligence

OLTP Database

OLAP Database
(Data Warehouse)

Visualization,

Manual
Analysis

NoSQL

Database(s)

No Relational Model
No Transactional
(eventual consistency)
No Normalized
Replication/Distribution
Multiple Technologies

Complex
Massive Data
Processing

Data

Analytics

e.g. Hadoop/MapReduce

Apoyo al desarrollador y tester
• Modelar para derivar las pruebas
• Cambios de los programas
• Consistencia de información replicada
• Eficiencia (minimizar datos)
• Efectividad (detección defectos)

J. Tuya (2015)

Pruebas SQL y NoSQL

10

(4) Testing Multidispositivo

Múltiples plataformas Múltiples proveedores de tecnología

J. Tuya (2015)

Pruebas SQL y NoSQL

11

(4) Testing Multidispositivo
Continuous Integration

& Delivery - DevOps

J. Tuya (2015)

Pruebas SQL y NoSQL

12

Evidencias: Usar SQLFpc para crear
una BD de pruebas

 Proceso iterativo (ejemplo en ERP Compiere)

 SQLFpc proporciona reglas ejecutables (SQL) por cada situación a probar

 Ejecutar reglas no cubiertas

 Seleccionar una regla no cubierta

24 condiciones, 5 tablas → 64 filas

 Crear filas en BD para cubrir

15 CASE, 20 tablas → 89 filas

J. Tuya (2015)

Pruebas SQL y NoSQL

13

C_Invoice_Candidate_v020406080100161116212631364146Step% Coverage / Mut. ScoreRows (%)FPC coverageMutation ScoreC_Invoice_LineTax_vt020406080100161116212631364146515661Step% Coverage / Mut. ScoreRows (%)FPC coverageMutation ScoreC_RfQResponseLine_v020406080100135791113Step% Coverage / Mut. ScoreRows (%)FPC coverageMutation ScoreC_RfQResponseLine_vt02040608010013579111315Step% Coverage / Mut. ScoreRows (%)FPC coverageMutation ScoreM_InOut_Candidate_v02040608010013579111315171921Step% Coverage / Mut. ScoreRows (%)FPC coverageMutation ScoreRV_BPartnerOpen0204060801001357Step% Coverage / Mut. ScoreRows (%)FPC coverageMutation ScoreRV_OpenItem0204060801001357911Step% Coverage / Mut. ScoreRows (%)FPC coverageMutation ScoreRV_WarehousePrice020406080100135791113Step% Coverage / Mut. ScoreRows (%)FPC coverageMutation Score Evidencias: Reducción de una BD de
100GB (benchmark TPC-H)

 Efectividad: Preserva la

cobertura respecto de la BD
de producción

 Eficiencia: Reducción de

tamaño independiente del de
la BD de producción

 Eficiencia: Tiempo

proporcional al de ejecución
de las consultas

 Funcionalidad: Soporta BD
grandes, queries complejas.
Totalmente automatizado

J. Tuya (2015)

Pruebas SQL y NoSQL

14

0200400600800100012001400160018002000Size of Reduced Database (Rows)SequentialSeq (x1000)Seq (x100)Seq (x10)ParallelPar (x1000)Par (x100)Par (x10)00,511,522,533,54Normalized Execution TimeSequentialSeq (x1000)Seq (x100)Seq (x10)ParallelPar (x1000)Par (x100)Par (x10) Cómo podemos ayudarnos
mutuamente?

- Coste pruebas

 SQL - Test4Data

 Utilizarlas en la empresa

 Obtener feedback

 NoSQL - Mundo Big Data

- Tamaño BD pruebas

+ Significativa

+ Calidad y Cobertura

+ Productividad (automatización)

- Tareas manuales (creación BD)

 Identificar problemática en las empresas

 Adaptación de nuestra investigación

 Entrenamiento

 SQLTest

 Formación Técnicas de Prueba

 Divulgación ISO/IEC/IEEE 29119.

Viabilidad aplicación/adaptación a PYMES

J. Tuya (2015)

Pruebas SQL y NoSQL

15

Contacto

 GIIS (Grupo de Investigación en Ingeniería del Software),

Universidad Oviedo
 http://giis.uniovi.es/

 Javier Tuya

 http://www.di.uniovi.es/~tuya/

 tuya at uniovi.es

 UbiqWare – Nacho Marín

 http://ubiqware.net

 info at ubiqware.net

J. Tuya (2015)

Pruebas SQL y NoSQL

16
  • Links de descarga
http://lwp-l.com/pdf15699

Comentarios de: Pruebas SQL, NoSQL y Multidispositivo (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad