Lección 5 de 6 · 2 min
Datos dinámicos y pruebas data-driven
Al terminar sabrás
10 min- Generar datos dinámicos (email, fecha, nombre) con variables aleatorias de Postman
- Usar pre-request scripts para preparar datos antes de enviar
- Correr un request con muchos juegos de datos desde un CSV (data-driven)
Construyes: Un request data-driven que prueba una validación con 5 juegos de datos desde un CSV.
El problema de los datos fijos
Si tu request siempre manda ana@test.cl, la segunda vez que lo corras puede fallar por "email ya registrado". Y probar 5 teléfonos distintos copiando el request 5 veces es justo lo que la lección de particiones te enseñó a no hacer. La solución: datos dinámicos y ejecución data-driven.
Variables dinámicas: datos frescos en cada corrida
Postman trae generadores integrados que se usan como variables:
{
"nombre": "{{$randomFullName}}",
"email": "{{$randomEmail}}",
"telefono": "+56 9 {{$randomInt}}"
}
Cada envío genera valores nuevos. {{$randomEmail}} te da un email único, evitando el choque por duplicados y haciendo el test repetible.
Pre-request scripts: preparar antes de enviar
A veces necesitas calcular algo justo antes de enviar (una fecha futura, un id, una firma). Eso va en la pestaña Pre-request Script, que corre antes del request:
// Pre-request Script: fecha de mañana en formato ISO
const manana = new Date(Date.now() + 86400000).toISOString();
pm.environment.set("fechaReserva", manana);
// luego en el body: "fecha": "{{fechaReserva}}"
Data-driven: un test, muchos datos
Aquí está la potencia real. En vez de un request por caso, usas el Collection Runner con un archivo de datos. Un CSV así:
telefono,esperado
+56 9 1234 5678,200
12345678,400
+56 9 abcd 5678,400
,400
+56 9 1234 567,400
En el request usas {{telefono}}; en Tests comparas el status con {{esperado}}. Corres la colección apuntando al CSV y Postman ejecuta el request una vez por fila, inyectando los datos de cada una. El reporte muestra 5 ejecuciones independientes: sabes exactamente qué partición se rompió.
Esto es la matriz de casos de la técnica de particiones, ejecutada automáticamente. Y es el formato que Newman consume para correrla en CI (lección 6).
Comprueba lo aprendido en el quiz y arma tu prueba data-driven en el reto.
Compruébalo
0/3Responde sin mirar atrás. Verás la explicación al instante.
1. ¿Para qué sirve un pre-request script?
2. Quieres probar la misma validación de teléfono con 5 juegos de datos distintos. ¿Qué usas?
3. ¿Por qué conviene generar un email único con {{$randomEmail}} en cada ejecución?
Reto: valida un teléfono con 5 datos
Crea un CSV con una columna 'telefono' y 5 filas: uno válido chileno, uno sin código país, uno con letras, uno vacío y uno con un dígito de menos.
Corre el request con el Collection Runner usando ese CSV y verifica que cada caso responde lo esperado.