learn advanced soapui groovy scripting concepts soapui tutorial 9
Los tutoriales anteriores de SoapUI han sido una introducción a SoapUI y sus conceptos de programación. A partir de ahora pasaremos a conceptos de scripting Groovy más avanzados. Seamos esto con Declaraciones de flujo condicional - declaraciones tanto booleanas como iterativas. Luego pasaremos a la colección de matrices.
Este es el noveno tutorial de nuestro Serie de tutoriales de SoapUI .
Las declaraciones condicionales se utilizan para controlar el flujo de la ejecución. Aquí hay diferentes tipos de declaraciones condicionales en Groovy.
Lo que vas a aprender:
- # 1. Declaraciones de control o lógicas:
- # 2. Declaraciones en bucle o iterativas:
- # 3. Colección de matrices:
- Conclusión
- Lectura recomendada
# 1. Declaraciones de control o lógicas:
Estas declaraciones dan como resultado verdadero o falso según las condiciones lógicas. Son Y, O y NO. Los símbolos utilizados son '&& (y)', '|' | y '! (Exclamación) 'respectivamente. El comportamiento es como se menciona en la tabla de verdad:
Tabla de verdad del operador 'Y':
Tabla de verdad del operador 'OR':
Operador 'NO' para fines de negación
Sentencia condicional: Los lenguajes de programación admiten las siguientes declaraciones condicionales:
- Si ... otra declaración
- If ... else if ... else declaración
- Operador ternario
- Declaración de cambio
A) if ... else bloquea la sintaxis:
si
{
}
Demás
{
}
En esta sintaxis, cuando se cumple la verdad, se ejecutará la declaración dada. Necesitamos encerrar las declaraciones entre llaves si el bloque contiene más de una línea. Esto indica que todo el bloque debe ejecutarse según la condición.
Mira el fragmento de código de ejemplo.
|_+_|Un si ... si no ... La declaración debe contener solo un bloque ELSE.
B) Múltiples bloques condicionales: if… else if… else sintaxis
si
{
}
De lo contrario si
{
}
Demás
{
}
Si ... si no si ... si no declaración es un poco diferente a si ... si no ... declaración- en términos de que tiene si no cuadra. Este bloque se usa para agregar múltiples condiciones. mira el siguiente ejemplo.
|_+_|Y mire la captura de pantalla de salida para el script anterior: Además, use esto como referencia para el ejemplo del operador boolen también:
C) Operador ternario:
Este operador funciona de manera similar a si ... si no declaración. Tiene dos operandos como el signo de interrogación (VERDADERO) y dos puntos para las declaraciones FALSE / predeterminadas.
def A = 100
def B = (A> 100) ? 'CONTRASEÑA ERRÓNEA'
log.info (B)
Aquí está la captura de pantalla del script anterior.
D) Caja del interruptor: Esta declaración permite múltiples ramas condicionales con diferentes valores. También admite la comparación de referencias de objetos de clase, expresiones regulares, colecciones como matrices, listas, etc.
Cambiar
{
caso :
;
descanso;
caso :
;
descanso;
defecto:
;
}
los caso declaraciones comparan los valores con los cambiar valor del caso. Si coincide, se ejecuta el bloque de caso correspondiente. Una vez que se ejecuta el bloque, debe detenerse con la palabra clave 'break'. Si pasamos por alto la palabra clave “break” al final de la declaración del caso, la ejecución se moverá a la siguiente declaración del caso, y eso podría no ser necesario. En caso de que ninguno de los casos sea cierto, defecto se ejecutará el bloque. Tenga en cuenta que Groovy admite todos los principales operadores y palabras clave, ya que está incorporado con las bibliotecas de Java.
|_+_| |_+_|# 2. Declaraciones en bucle o iterativas:
Estos permiten la repetición siempre que lo necesitemos y son especialmente útiles para las pruebas basadas en datos.
Por ejemplo, supongamos que tenemos algunos códigos postales en un archivo de Excel. Para recuperar todos los códigos postales uno por uno del archivo de Excel y pasarlo al servicio, es decir. GetSuppliersZipcode , podemos usar declaraciones iterativas. SoapUI también proporciona una función alternativa llamada fuente de datos y pasos de prueba de bucle de fuente de datos (disponible solo en las versiones de prueba y con licencia de SoapUI Pro).
Podemos usar estas siguientes declaraciones iterativas en el script maravilloso:
- En bucle
- Mientras bucle
En bucle:
por (; ; )
{
;
}
En la sintaxis anterior, la inicialización indica el punto de inicio del bucle y, según la condición, el bucle continuará o detendrá la ejecución.
Ver el siguiente script
para (int i = 1; i<=10; i++)
{
log.info ('Loop Iterated' + i + 'veces');
}
El script anterior producirá los resultados como se muestra en la siguiente captura de pantalla.
Ahora usemos la declaración de control y la declaración iterativa en nuestro mundo real de pruebas. Siga los pasos siguientes:
VPN gratuitos para streaming
- Agregue Testcase con su nombre deseado. Lo he creado como 'T9_GetSupplierByZipCode_TestCase'.
- Luego, agregue una propiedad llamada 'Property_Zipcode'
- Agregue el paso de solicitud de prueba para el servicio 'GetSupplierByZipCode' y coloque el nombre de la propiedad en la solicitud como se muestra en la captura de pantalla.
Agregue un paso de prueba de script maravilloso como se muestra en la siguiente captura de pantalla.
En el maravilloso editor de scripts, escribe el siguiente script.
|_+_|El siguiente resultado se recibe en el registro y en la pantalla de respuesta del servicio.
(Haga clic en la imagen para ampliarla)
Bucle 'while':
Sintaxis:
mientras
{
;
}
La lógica anterior también se puede implementar utilizando el ciclo 'while'.
Por lo tanto, la esencia es que la declaración iterativa se puede usar para:
- Ejecute los casos de prueba o los pasos de prueba repetidamente
- Controle el flujo de la ejecución a través de las declaraciones de control.
# 3. Colección de matrices:
La colección de matrices ayuda a almacenar varios valores en una sola variable u objeto. El índice de la matriz comienza en cero de forma predeterminada y necesitamos usar ese índice con el nombre de la matriz para acceder al valor correspondiente almacenado en la matriz. Sintaxis para declarar matrices en un script maravilloso:
arrayName = nuevo objeto (5) o,
arrayName = nuevo objeto (10) () o,
arrayName = nuevo objeto (10) (10) ()
Nota : Al declarar matrices, debemos especificar el tamaño inicial, de lo contrario arrojará un error de compilación. Este es el ejemplo simple de la matriz unidimensional.
ArrayObj = nuevo objeto (5);
ArrayObj (0) = 'Caso de prueba1';
ArrayObj (1) = 'Testcase2';
ArrayObj (2) = “Testcase3”;
ArrayObj (3) = 'Testcase4';
ArrayObj (4) = 'Testcase5';
Ahora implementemos esto en nuestros pasos de prueba regulares. Por lo tanto, agregue la propiedad, la solicitud de prueba y el paso de prueba del script en el conjunto de pruebas del proyecto como se muestra en la siguiente captura de pantalla.
Y luego haga doble clic en el paso de prueba del guión y escriba el siguiente guión.
|_+_| |_+_|Por lo tanto, las matrices son muy útiles para manejar múltiples elementos con diferentes tipos. Más práctica fomentará una mejor comprensión y facilidad de uso.
Conclusión
Esa fue una introducción general con ejemplos de bloques condicionales o lógicos que incluyen IF… ELSE, switch y declaraciones ternarias. Estas declaraciones están controladas por operadores lógicos como AND, OR, NOT. En comparación con el bloque 'cambiar', el bloque 'si' es rápido y simple. Para manejar múltiples colecciones como matrices para iterar el proceso de prueba, las declaraciones de bucle son críticas.
Siguiente tutorial de SoapUI # 10 : En el próximo post aprenderemos “Scripting Groovy orientado a objetos en SoapUI”.
En los próximos tutoriales de SoapUI Groovy Script aparecerán conceptos más útiles. Sigue leyendo y comparte tus experiencias y consultas en los comentarios a continuación.
Lectura recomendada
- Cómo manejar la excepción en los scripts de SoapUI Groovy - Tutorial de SoapUI n. ° 11
- Cómo escribir guiones básicos Groovy en SoapUI - Tutorial de SoapUi n. ° 6
- Cómo utilizar propiedades en SoapUI Groovy Script - Tutorial de SoapUI n. ° 7
- Tutoriales detallados de Eclipse para principiantes
- 4 características importantes de SoapUI Pro para audiencias profesionales - Tutorial de SoapUI n. ° 12
- Más de 15 tutoriales de SoapUI: la mejor herramienta de prueba de API de servicios web
- Proceso de descarga e instalación de SoapUI paso a paso - Tutorial de SoapUI n. ° 3
- Una guía rápida de SoapUI para almacenar datos de solicitudes y respuestas en un archivo - Tutorial de SoapUI n. ° 15