Mostrando entradas con la etiqueta pruebas. Mostrar todas las entradas
Mostrando entradas con la etiqueta pruebas. Mostrar todas las entradas

lunes, 10 de junio de 2013

Puebas de carga y rendimiento con SOAPUI y WSO2.

En esta entrada veremos cómo podemos usar SOAPUI para realizar pruebas sobre los servicios web.
Usaremos el servicio creado en la entrada anterior, pueden usar el servicio seguro o inseguro, como gusten.

Seleccionan un mensaje request y le dan clic derecho y seleccionan “Add to TestCase”


Ahí le ponen un nombre o dejan el que está, porque estaremos creando una suite de pruebas y luego un caso de prueba. Verán entonces lo siguiente:

Les aparecen varias opciones, algunas son aserciones que permiten validar contra el XSD definido dentro del servicio, en el caso de la segunda opción que la marcaré, y en el caso de la primera se valida que el mensaje de respuesta  sea un mensaje SOAP y no un SOAPFault por ejemplo.
Luego dan OK.

Como verán se agrega una suite de prueba con un caso de prueba que tiene además un paso de prueba que se corresponde con la operación que usamos como base.

Si hacen una prueba verán como les devuelve un mensaje de respuesta válido. Además de que nos pone en verde las 2 aserciones que especificamos cuando creábamos el caso de prueba.

Ahora daremos clic derecho encima de “Load Test” y seleccionamos “New Load Test” , ponen un nombre y verán lo siguiente:


Ahora debemos ajustar los parámetros en funcion de nuestras necesidades.
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.

En este caso hice una prueba con solo 1 hilo, con una demora de 1ms y con 100 ejecuciones por hilo. Ustedes varíen a su discreción y revisen sus resultados.