El evento Aserción es una herramienta de depuración, similar al evento Condicional , que prueba la lógica de tu cadena y valida que funcione según lo previsto. En el nivel más básico, una rama en cadena continuará sin interrupción cuando se supere una aserción y se detendrá cuando falle una aserción, pero hay una serie de condiciones que afectan a esta regla. Puedes encontrar una lista de casos de uso comunes al final de este artículo.
Paso 1: Añadir el evento a la cadena
- En Generador de cadenas, desde la pestaña Cadenas , haz clic en Editar para la cadena.
- Haz clic en el evento de Eventos de cadena mueve Aserción al lugar de la cadena donde debería producirse el evento.
- Arrastra un enlace al evento desde el nodo anterior de la cadena.
Nota: Para cambiar la posición de un nodo en la cadena, desvincúlalo de otros nodos y, a continuación, muévelo al lugar donde debería estar. Para desplazar varios nodos a la vez, mantén pulsado MAYÚS mientras los seleccionas.
- Selecciona el nodo del evento y haz clic en Editar .
- En Información básica, introduce un nombre que sea único y una descripción para ayudar a identificar el evento.
Nota: Activa Detener cadena al fallar si la cadena completa debe detenerse cuando falle esta aserción. Si se deja sin marcar, otras ramas de la cadena se ejecutarán hasta su finalización aunque falle esta en concreto.
Etapa 2: Establecer la lógica condicional
Debajo de Condiciones, construye la lógica condicional como reglas o grupos de reglas para probar salidas y variables de varios tipos de datos:
- Cadena, para uno o varios caracteres
- Entero, para cualquier valor numérico entero no decimal.
- Fecha, para una cadena o variable de fecha.
- Flotante, para cualquier valor numérico
- JSON, para Javascript Object Notation
Nota: Para JSON, utiliza una transformación de variables para analizar los valores.
- Selecciona si quieres añadir una regla o un grupo de reglas.
- Si incluyes varias reglas o grupos, únelos con un booleano Y u O:
- Si todas las Reglas o Grupos de deben ser verdaderas para que se cumpla la condición, selecciona Y.
- Si cualquier regla o grupo de debe ser verdadera para que se cumpla la condición, selecciona O.
- Para cada regla, selecciona el tipo de datos y la salida o variable a probar, y establece sus criterios para pasar la condición:
- Para evaluar si el valor está en blanco, selecciona Está en blanco o No está en blanco.
- Para evaluar si el valor incluye caracteres específicos u otro valor de salida o variable, selecciona Contiene, e introduce o selecciona el valor que debe coincidir.
- Para evaluar si el valor coincide con una expresión regular, selecciona Coincide con RegExp, e introduce la expresión con la que debe coincidir.
- Para evaluar si el valor comienza o finaliza con caracteres específicos o con otro valor de salida o variable, selecciona Comienza con o Finaliza con, e introduce o selecciona el valor que debe coincidir.
- Para evaluar si un valor numérico es igual a un importe, selecciona = o !=, e introduce o selecciona el importe.
- Para evaluar si un valor numérico es mayor o menor que una cantidad, selecciona < o >, e introduce o selecciona la cantidad.
- Para comprobar si un valor numérico es mayor o menor o igual que una cantidad, selecciona <= o >=, e introduce o selecciona la cantidad.
- Después de establecer la lógica condicional, haz clic en Guardar.
Nota: Para eliminar una regla de la lógica condicional, haz clic en Eliminar .
Condiciones y casos de uso común
El evento Aserción puede añadirse a varios caminos o "ramas" de una cadena. Cada aserción funciona de forma independiente, lo que significa que una aserción fallida detendrá solo la rama concreta en la que esté colocada: todas las demás ramas seguirán ejecutándose hasta su finalización. Sin embargo, si falla una sola aserción, toda la cadena se marcará como "Fallida".
Lo que hay que saber:
- Activa la opción Detener cadena al fallar para detener inmediatamente toda la cadena cuando falle una aserción.
- Puedes Invalidar un fallo de cadena estableciendo un evento Establecer como ? resultado de cadena. Cuando un nodo Establecer resultado de cadena se establece en "Correcto", la cadena siempre pasará independientemente de cualquier aserción fallida.
Evento Aserción frente a Evento Condicional
El evento Condicional, cuando se combina con el evento Establecer resultado de cadena, puede utilizarse para conseguir resultados similares, pero se necesitan múltiples nodos y rutas de ramificación con respecto al evento Establecer como ? El evento Aserción pretende simplificar y reemplazar este proceso más complejo.
Para demostrarlo, aquí tienes un ejemplo de la lógica típica necesaria para recrear una rama "Correcto" y "Erróneo" con un evento Condicional:
Y aquí tienes la misma lógica para utilizar un único evento Aserción:
Nota: Cuando se utiliza en la misma cadena, el evento Establecer resultado de cadena siempre invalidará los resultados de un evento de aserción. Por ejemplo, una cadena con un nodo Establecer resultado de cadena que esté establecido en "Correcto" siempre pasará independientemente del evento Aserción.