Logo de QANode

Variables

Las variables son valores reutilizables en escenarios de prueba. Permiten centralizar configuraciones como URLs, credenciales de prueba, indicadores y datos compartidos.

QANode tiene dos alcances principales:

  • Globales — disponibles para cualquier escenario.
  • De proyecto — disponibles para escenarios vinculados a un proyecto específico.

Gestionar Variables

  1. En el menú lateral, haga clic en Variables
  2. La lista muestra las variables globales registradas

Imagen: Pantalla de variables mostrando lista con nombre, tipo, valor y última actualización


Variables Globales y de Proyecto

Variables Globales

Las variables globales deben usarse para valores compartidos por varios proyectos, como:

  • URL base común;
  • indicadores de ejecución;
  • datos de prueba reutilizables;
  • configuraciones generales.

Se crean desde el menú lateral Variables.

Variables de Proyecto

Las variables de proyecto están dentro de la pestaña Variables de la página del proyecto. Use este alcance cuando el valor pertenece a un proyecto específico, como:

  • URL de homologación de ese sistema;
  • usuario de prueba de ese proyecto;
  • identificadores o datos de prueba propios de ese equipo;
  • configuraciones que no deben aparecer en la lista global.

Cuando un escenario pertenece a un proyecto, las variables del proyecto están disponibles con la misma sintaxis que las variables globales:

{{ variables.NOMBRE_DE_VARIABLE }}

Si una variable global y una variable de proyecto tienen el mismo nombre, evite depender de esa superposición. Prefiera nombres claros para cada alcance.


Crear una Variable

  1. Para una variable global, acceda a Variables en el menú lateral. Para una variable de proyecto, abra el proyecto y acceda a la pestaña Variables
  2. Haga clic en + Nueva Variable
  3. Complete:
CampoRequeridoDescripción
NombreIdentificador de la variable (sin espacios)
TipoTipo del valor
ValorValor de la variable
SecretaNoSi está activado, el valor será cifrado
  1. Haga clic en Guardar

Tipos de Variables

TipoDescripciónEjemplo
StringTextohttps://api.exemplo.com
NumberNúmero30000
BooleanVerdadero/Falsotrue
JSONObjeto o arreglo{ "timeout": 5000, "retries": 3 }

Variables Secretas

Las variables marcadas como secretas se cifran en la base de datos. Son ideales para:

  • Contraseñas de prueba
  • Tokens de API
  • Claves de acceso

Características:

  • El valor está enmascarado en la interfaz (mostrado como ••••••)
  • El valor está cifrado en la base de datos
  • El valor real es accesible durante la ejecución de los flujos

Nota: Para credenciales de conexión (base de datos, SSH, API), prefiera usar Credenciales en lugar de variables secretas.


Usar Variables en los Flujos

Acceda a las variables usando la sintaxis de expresiones:

{{ variables.NOMBRE_DE_VARIABLE }}

En el editor de flujo, el botón Variables del panel de propiedades abre una lista organizada para arrastrar o hacer clic en valores.

Las variables aparecen separadas por alcance:

GrupoEstado inicialDescripción
FlujoAbiertoVariables locales y outputs de nodos anteriores del flujo actual
ProyectoCerradoVariables registradas en el proyecto del escenario
GlobalCerradoVariables globales de la instalación

Esta separación evita mezclar datos globales, de proyecto y del flujo cuando hay muchas variables registradas.

Outputs de nodos anteriores

Cada nodo ejecutado aparece como un grupo con:

  • nombre del nodo;
  • tipo del nodo;
  • estado de la ejecución;
  • cantidad de campos disponibles.

Los objetos y arreglos empiezan cerrados para mantener la lista legible. Al expandir un campo, los hijos aparecen debajo con un nombre visual corto. Por ejemplo, dentro de fileRef, los hijos aparecen como name, mimeType y sizeBytes, pero la expresión copiada sigue siendo completa.

Archivos en el panel de variables

Cuando un output es un archivo (fileRef), el panel muestra el archivo como un elemento arrastrable. Al expandirlo, los detalles principales quedan disponibles:

CampoUso
nameNombre del archivo
mimeTypeTipo MIME
sizeBytesTamaño en bytes

Los campos internos como source y path no aparecen en la lista principal para no confundir el uso común, pero siguen accesibles por expresión cuando sea necesario.

Si un campo de entrada no acepta archivos, o no acepta ese tipo de archivo, el panel marca el campo en rojo y muestra un mensaje de archivo no soportado.

Ejemplos de Uso

URL de API:

URL: {{ variables.API_URL }}/api/users

Timeout:

Timeout: {{ variables.DEFAULT_TIMEOUT }}

Credenciales de prueba:

Email: {{ variables.TEST_EMAIL }}
Contraseña: {{ variables.TEST_PASSWORD }}

Configuración JSON:

Retries: {{ variables.CONFIG.retries }}
Timeout: {{ variables.CONFIG.timeout }}

Sobrescritura en Tiempo de Ejecución

El nodo Set Variable puede sobrescribir variables durante la ejecución:

[Set Variable: API_URL = https://staging.exemplo.com]
    │
    ▼
[HTTP Request: GET {{ variables.API_URL }}/api/health]

La sobrescritura es temporal — solo afecta la ejecución actual. El valor original en la base de datos no se modifica.

Override por Pipeline — Enterprise

En la integración CI/CD de QANode Enterprise, una variable también puede sobrescribirse directamente desde la CLI o la API para una ejecución específica.

Ejemplo:

npx @qanode/cli run suite \
  --suite-id SUITE_ID \
  --var BASE_URL=https://preview.app \
  --wait

Este override:

  • vale solo para la ejecución actual
  • no cambia el valor persistido de la variable
  • es útil para entornos temporales de build, homologación y preview

Para más detalles, vea Overrides por Ejecución.


Buenas Prácticas

Nomenclatura

Use UPPER_SNAKE_CASE para variables globales y de proyecto:

CorrectoIncorrecto
API_URLapiUrl
TEST_EMAILemail
DEFAULT_TIMEOUTtimeout
MAX_RETRIESretries

Organización por Ambiente

Cree variables con prefijo de ambiente para facilitar el cambio:

PROD_API_URL = https://api.exemplo.com
STAGING_API_URL = https://staging.exemplo.com
DEV_API_URL = http://localhost:3000

Cuándo Usar Variables vs. Credenciales

EscenarioUse
URL base de APIVariable
Token de autenticaciónCredencial HTTP
Datos de conexión a base de datosCredencial de base de datos
Contraseña de prueba genéricaVariable secreta
Indicador de configuraciónVariable
Datos de conexión SSHCredencial SSH

Consejos

  • Centralice las URLs en variables para facilitar el cambio de ambiente
  • Use variables secretas para datos sensibles
  • Prefiera credenciales para datos de conexión estructurados
  • Use variables globales para valores compartidos por toda la instancia
  • Use variables de proyecto para datos específicos de un proyecto
  • El tipo JSON es útil para agrupar configuraciones relacionadas