Pruebas de estrés o carga a Servicios Web SOAP con SOAP UI
Pruebas de carga o rendimiento
En la ingeniería del software, las pruebas de rendimiento son las pruebas que se realizan, desde una perspectiva, para determinar lo rápido que realiza una tarea un sistema en condiciones particulares de trabajo. También puede servir para validar y verificar otros atributos de la calidad del sistema, tales como la escalabilidad, fiabilidad y uso de los recursos. Las pruebas de rendimiento son un subconjunto de la ingeniería de pruebas, una práctica informática que se esfuerza por mejorar el rendimiento, englobándose en el diseño y la arquitectura de un sistema, antes incluso del esfuerzo inicial de la codificación.
Prueba de estrés
Esta prueba se utiliza normalmente para romper la aplicación. Se va doblando el número de usuarios que se agregan a la aplicación y se ejecuta una prueba de carga hasta que se rompe. Este tipo de prueba se realiza para determinar la solidez de la aplicación en los momentos de carga extrema y ayuda a los administradores para determinar si la aplicación rendirá lo suficiente en caso de que la carga real supere a la carga esperada.
En resumen podemos decir que las pruebas de carga o rendimiento nos ayudan a saber que tan rápido es nuestro software en este caso, nuestros servicios web.
Mientras que las pruebas de estrés son ejecutadas con el principal objetivo de "romper" el software o servicios web que estamos probando.
Es importante que tengamos en consideración esto ultimo antes de causar caos por todos lados de la infraestructura tanto lógica como física de un sistema informático.
SOAP UI
![]() |
SoapUI |
SoapUI es la herramienta de mayor difusión para probar webservices en arquitecturas orientadas a servicios (SOA) y Representational State Transfers (REST).
Aprender a usar una nueva aplicación siempre es un reto, por muy sencilla que esta sea. Es por ello que creo un pequeño tutorial de SoapUI que puedes usar como referencia y facilitarte el aprendizaje.
El proyecto de ejemplo que vamos a crear de SoapUI puedes usarlo como punto de partida, probar un proyecto, correr un una prueba de carga SoapUI y ver los casos de prueba que se generan para que te familiarices con la interfaz de SoapUI.
Requisitos previos al tutorial
Antes de comenzar el tutorial es importante que cuenten ya con la herramienta , en caso de no tenerla instalada, dejo la liga oficial para que se lo descarguen dando clic Aqui.Como segundo requisito tenemos que contar con un servicio web expuesto que este funcionando, ya sea nuestro o público en internet yo voy a tomar el siguiente:
http://www.webservicex.net/ValidateEmail.asmx?WSDL
Tutorial: pruebas de carga en SOAP UI
Una vez instalada la herramienta SoapUI, la iniciamos y esperamos a que nos muestra una ventana como la siguiente:
Y nos abrirá una ventana como la siguiente:
Damos un nombre al proyecto y tomamos la URL del Endpoint del servicio que vamos a probar como sigue:
Cuando damos clic en "OK" , la herramienta hace un análisis del URL que le proporcionamos y genera un proyecto para realizar pruebas de invocación al servicio web
Seleccionamos un mensaje request dando clic derecho y escogemos la opción de "Add to TestCase" y damos un nombre a la suite de pruebas y al caso de prueba.
Después veremos una ventana con varias opciones donde las que mas nos importan son la primera y segunda, en la primera opción indicamos que la prueba debe validar que realmente la transmisión debe ser de tipo SOAP y la segunda nos ayuda a verificar que la petición que estamos haciendo al servicio web esta correctamente formada según el contrato o documento XSD que tiene el servicio web.
Al dar clic en "OK" se generara una suit de pruebas con el caso de pruebas , completamente listos para comenzar las pruebas de carga o estrés.
Si queremos simular varios clientes consumiendo el servicio, vamos a la opción señalada en negro, por defecto aparecen 5 pero ustedes puedan variar ese número a discreción, tengan en cuenta que mientras más hilos más consumo del CPU.
Si queremos especificar una demora entre una petición y otra vamos a la opción señalada en rojo. Tengan en cuenta que es en milisegundos.
Si queremos determinar el tiempo de duración del servicio vamos a la opción señalada en verde y aquí se muestra que solo durará 60 segundos pero pueden cambiarla para especificar la cantidad de peticiones por hilo por ejemplo.
Luego es solo cosa de correr la prueba, como mismo se ejecuta una petición a un servicio y esperar los resultados.
Espero que halla sido de mucha ayuda este pequeño tutorial, hago la aclaración que el contenido a pesar de que yo lo escribi de 0, tome información de un internauta les dejo su link para que también chequen sus post.
http://desarrollosoa.blogspot.mx/
Hasta pronto y nos vemos... en Fa!
Muchas gracias por el tutorial.
ResponderEliminarGracias por el tutorial, directo al grano y muy entendible.
ResponderEliminarEste comentario ha sido eliminado por el autor.
ResponderEliminar