Resultados de búsqueda para servicios web
Pruebas de APIs REST guiadas por Aprendizaje Activo
La generación automática de casos de prueba para APIs REST es un tema de investigación muy activo. La mayoría de técnicas emplean un enfoque de caja negra basado en la generación aleatoria de peticiones a partir de la especificación de la API. Dichas técnicas tienen una limitación importante: ignoran las dependencias inter-parámetro (restricciones entre parámetros que se deben cumplir para que la petición a la API sea válida), ya que no están soportadas por los lenguajes de especificación actuales. Como resultado, la mayoría de peticiones generadas automáticamente viola alguna dependencia y es rechazada por la API. En este artículo, proponemos un método para entrenar eficientemente un clasificador que prediga la validez de las peticiones, para as+AO0 poder descartar las inválidas antes de invocar a la API. Nuestra técnica aprende a medida que genera casos de prueba, de forma que el porcentaje de llamadas válidas aumenta progresivamente hasta un 90+ACU en APIs comerciales como GitHub y Stripe. Estos resultados prometedores sugieren que nuestra propuesta podría mejorar significativamente la generación automática de casos de prueba para APIs REST.
Autores: A. Giuliano Mirabella / Alberto Martin-Lopez / Sergio Segura / Luis Valencia-Cabrera / Antonio Ruiz-Cortés /
Palabras Clave: APIs RESTful - pruebas software - servicios web
Una Infraestructura de Servicios Web para la Ejecución de Tareas de Realidad Aumentada con Geolocalización en Tiempo Real
Autores: Lissette López-Faican / Javier Jaen /
Palabras Clave: Empatía - Geolocalización - Juego móvil - Realidad Aumentada - servicios web
Servicios adaptive-ready para la reconfiguración dinámica de arquitecturas de microservicios
Las arquitecturas de microservicios ofrecen un enfoque para la ingeniería de sistemas complejos y distribuidos en donde la escalabilidad y disponibilidad de las soluciones es un factor crítico.En la última década han surgido herramientas (orquestadores) orientadas a monitorizar y mantener de manera automática estas infraestructuras para garantizar la calidad del servicio.Sin embargo, estos orquestadores no están diseñados para gestionar automáticamente cambios arquitectónicos sobre la configuración de servicios, necesarios bajo ciertas condiciones operativas.Este trabajo promueve la aplicación de la computación autónoma (a través del uso de bucles de control) como estrategia para la reconfiguración dinámica de arquitecturas de microservicios.Para ello, se introduce el concepto de servicio adaptive-ready, como un microservicio que ofrece un contrato de adaptación diseñado ser usado por los bucles de control.Para ejemplificar la propuesta se utiliza un caso de estudio real en el que se aplican estos principios para desarrollar el sistema informático de una fábrica de producción industrial.Se han diseñado e implementado un conjunto de servicios ‘adaptive-ready’ y se ha desplegado una arquitectura de microservicios reconfigurable sobre kubernetes.
Autores: Joan Fons / Vicente Pelechano / Manoli Albert / Miriam Gil /
Palabras Clave: Arquitecturas de microservicios - Computación Autónoma - Reconfiguración arquitectónica - servicios web
Un Catálogo de Dependencias Inter-Parámetro en APIs REST
Los servicios web suelen imponer dependencias entre parámetros (también llamadas dependencias inter-parámetro) que restringen el modo en que dos o más parámetros de entrada pueden combinarse para formar una llamada válida. Desafortunadamente, los lenguajes de especificación de servicios web actuales como OpenAPI Specification (OAS) no proporcionan soporte para describir dichas dependencias formalmente, lo que dificulta enormemente la interacción con estos servicios de forma automática, sin necesidad de intervención humana. Investigadores y desarrolladores piden abiertamente soporte para el modelado y la validación de las dependencias inter-parámetro en APIs web, pero esto no es posible hasta que no conozcamos profundamente el alcance de este tipo de dependencias, y cómo emergen en la práctica +IBQ-este es el objetivo de nuestro trabajo. En este artículo, presentamos un estudio exhaustivo de la presencia de dependencias inter-parámetro en APIs web industriales. El estudio est+AOE basado en una revisión de más de 2.500 operaciones de 40 APIs reales pertenecientes a diversos dominios de aplicación. Confirmamos que las dependencias son la norma y no la excepción, con un 85+ACU de las APIs revisadas conteniendo algún tipo de dependencia inter-parámetro. Como la principal contribución de nuestro estudio, presentamos un catálogo de siete tipos de dependencia que se encuentran de manera sistemática en APIs REST.
Autores: Alberto Martin-Lopez / Sergio Segura / Antonio Ruiz-Cortés /
Palabras Clave: dependencias entre parámetros - restricciones - servicios web
Inferencia Automática de Dependencias Inter-Parámetro en APIs REST
La generación automática de casos de prueba para APIs REST es un tema de investigación muy activo. La mayoría de técnicas emplean un enfoque de caja negra basado en la generación aleatoria de peticiones a partir de la especificación de la API. Dichas técnicas tienen una limitación importante: ignoran las dependencias entre parámetros. Como resultado, la mayoría de peticiones viola alguna dependencia y son rechazadas por la API. En este artículo, proponemos inferir automáticamente dichas dependencias únicamente a partir de la especificación de la API y sus entradas y salidas. Nuestra técnica aprende a medida que genera casos de prueba, de forma que el porcentaje de llamadas válidas aumenta progresivamente hasta alcanzar una precisión del 90+ACU en APIs comerciales como GitHub o YouTube. Estos prometedores resultados sugieren que nuestra propuesta podría mejorar significativamente la generación automática de casos de prueba para APIs REST.
Autores: A. Giuliano Mirabella / Alberto Martin-Lopez / Sergio Segura / Luis Valencia Cabrera / Antonio Ruiz-Cortés /
Palabras Clave: APIs RESTful - pruebas software - servicios web
RESTest: Pruebas de Caja Negra para APIs REST con Soporte para Restricciones
Las técnicas de pruebas automatizadas para APIs REST suelen seguir un enfoque de caja negra, donde los casos de prueba se derivan de la especificación de la API. Estas técnicas muestran resultados prometedores, pero ignoran las restricciones entre los parámetros de entrada de la API (llamadas dependencias inter-parámetro), ya que estas no pueden describirse formalmente en los lenguajes de especificación actuales. Como resultado, las herramientas de caja negra recurren a la fuerza bruta para la generación de casos de prueba válidos, es decir, aquellos que satisfacen todas las dependencias inter-parámetro. Esto no es solo extremadamente ineficiente, sino que además es improbable que funcione con muchos servicios del mundo real, donde las dependencias inter-parámetro son complejas y abundantes. En este artículo, presentamos RESTest, un framework de pruebas automatizadas de caja negra para APIs REST. Entre sus principales características, RESTest soporta la especificación y el análisis automático de las dependencias inter-parámetro de la API, lo que permite utilizar resolutores de restricciones para la generación automática de casos de prueba válidos. Esto permite detectar más errores, y más rápido, mediante una evaluación más exhaustiva de las combinaciones válidas e inválidas de los parámetros de la API, y el uso de oráculos de prueba antes no disponibles. Los resultados de nuestra evaluación en 6 APIs comerciales muestran que RESTest puede generar de manera eficiente hasta un 99+ACU más de casos de prueba válidos en comparación con técnicas de pruebas aleatorias, un 60+ACU de media. Lo que es más importante, RESTest revel+APM más de 2.000 fallos no detectados por pruebas aleatorias, encontrando errores en todos los servicios probados.
Autores: Alberto Martin-Lopez / Sergio Segura / Antonio Ruiz-Cortés /
Palabras Clave: pruebas de caja negra - Resolución de restricciones - REST - servicios web
Analyzer4BPEL: Una herramienta de análisis de composiciones WS-BPEL para su aplicación en la etapa de prueba del software
Toda herramienta de prueba de software requiere en algún momento de su proceso realizar un análisis, o bien como primer paso, para extraer la información necesaria para aplicar una determinada técnica, o bien, una vez procesado el software para estudiar los resultados y evaluarlos. Existen en la actualidad herramientas capaces de analizar la mayoría de los lenguajes de programación. Sin embargo, no abundan los analizadores de lenguajes para composiciones de servicios. En este trabajo se presenta una aplicación que realiza un análisis de composiciones en lenguaje WS-BPEL y de sus casos de prueba para extraer información útil para diversos objetivos. Así mismo, se describe su utilización particular, en una de las etapas de la aplicación de una técnica de prueba de software: la prueba metamórfica.
Autores: Kevin J. Valle-Gómez / M. Carmen de Castro-Cabrera / Inmaculada Medina-Bulo /
Palabras Clave: análisis - BPTS - casos de prueba - prueba del software - prueba metamórfica - relaciones metamórfircas - servicios web - WS-BPEL
Operadores de Mutacíon de Cobertura para WS-BPEL 2.0
Dada la importancia que en los últimos años están cobrando los servicios web en el ámbito de los procesos de negocio, es imprescindible contar con un soporte de casos de prueba lo suficientemente amplio como para detectar fallos y hacer que se apliquen criterios de cobertura sobre estos servicios. En este contexto está enmarcada la prueba de mutaciones, una técnica de prueba basada en fallos que requiere la definicíon de un conjunto de operadores de mutacíon para realizar cambios sintácticos en el programa que se desea probar. En este trabajo se define e implementa, por primera vez, un conjunto de operadores de mutacíon de cobertura para WS-BPEL 2.0, que aplican los criterios de cobertura definidos dentro del contexto de las pruebas de caja blanca. Además se muestran los resultados experimentales obtenidos al aplicar dichos operadores a varias composiciones WS-BPEL, viendo la aportacíon de éstos en el proceso de prueba.
Autores: Antonia Estero Botaro / Juan Boubeta Puig / Valentín Liñeiro Barea / Inmaculada Medina Bulo /
Palabras Clave: criterios de cobertura - operadores de mutación - prueba de mutaciones - servicios web - WS-BPEL
Aplicación de la técnica de pruebas metamórficas a una composicíon de servicios: Metasearch
Debido a que las técnicas de prueba tradicionales no están adaptadas a las características peculiares de los servicios web, se hace necesario el diseño de nuevas técnicas que ayuden en este ámbito. En un trabajo previo se propuso las pruebas metamórficas como una técnica válida para aplicar a composiciones de servicios web en WS-BPEL. En este trabajo se aplica la arquitectura propuesta allí a la composicíon de servicios Metasearch, que por su complejidad requiere un análisis detallado. Se incluye el estudio y especificacíon de las relaciones metamórficas para esta composicíon. Así mismo, se añade una comparativa de otras composiciones estudiadas que muestra resultados prometedores.
Autores: Ma del Carmen de Castro Cabrera / Azahara Camacho Magriñán / Inmaculada Medina Bulo /
Palabras Clave: pruebas metamórficas - servicios web - WS-BPEL
Un Método de Generación de Pruebas de Rendimiento para Múltiples Tecnologías desde Modelos UML con Anotaciones MARTE
Obtener el rendimiento esperado de un flujo de trabajo sería más fácil si cada tarea incluyera sus propias especificaciones. Sin embargo, normalmente sólo se dan requisitos globales de rendimiento, obligando a los diseñadores a inferir los requisitos locales a mano. En trabajos anteriores presentamos dos algoritmos que automáticamente inferían restricciones locales de rendimiento a partir de diagramas de actividad Unified Modelling Language anotados mediante el perfil Modelling and Analysis of Real-Time and Embedded Systems. En este trabajo presentamos un método para usar estas anotaciones para generar casos de prueba de rendimiento para múltiples tecnologías, relacionando el modelo de rendimiento con modelos de diseño e implementación. Mostramos cómo se podría aplicar a código Java y a composiciones de servicios mediante tecnologías existentes de código abierto, y estudiamos las tareas a realizar para su implementación y las similitudes y diferencias con otras propuestas.
Autores: Antonio García Domínguez / Inmaculada Medina Bulo /
Palabras Clave: Ingeniería Dirigida por Modelos - MARTE - rendimiento del software - servicios web - UML
No encuentra los resultados que busca? Prueba nuestra Búsqueda avanzada