Como generar Datos de Prueba en Java

Cómo Genero Datos de Prueba Sintéticos en Java (Sin Tocar Información Real)

Una de las preguntas que más me hacen QA que empiezan en sectores regulados —banca, seguros, salud— es cómo hacer pruebas realistas sin usar datos de clientes reales. La respuesta corta: nunca deberías necesitarlos. Con datos sintéticos bien generados, puedes probar exactamente los mismos escenarios sin ningún riesgo legal ni de seguridad.

En este tutorial te muestro cómo configuré un generador de datos sintéticos en Java usando Datafaker, la librería activa y mantenida para esto en el ecosistema JVM. Vamos a generar nombres, direcciones, datos financieros y hasta un identificador de documento personalizado — todo 100% inventado, listo para usar en tus casos de prueba.

Requisitos Previos

  • Java 17 o superior — Datafaker 2.x lo requiere como mínimo
  • Maven 3.6+
  • Cualquier IDE con soporte Java (IntelliJ, Eclipse, VS Code)

Verifica tu versión de Java:

TERMINAL

java --version
# Debe mostrar 17.x o superior

Paso 1 — Crear el Proyecto y Agregar Datafaker

Crea un proyecto Maven nuevo y agrega la dependencia en tu pom.xml:

Paso 2 — Generar Datos Personales Básicos

Empecemos con lo esencial: nombre, dirección y teléfono, usando el locale en español.

Ejecuta este archivo y deberías ver algo como:

Paso 3 — Generar Datos Financieros

Ahora lo que realmente necesitamos para testing bancario: cuentas, tarjetas y montos simulados.

Paso 4 — Crear un Generador Personalizado de Cédula

Datafaker no incluye un formato nativo para documentos de identidad colombianos, así que construí un método simple para generarlos. Esto es útil siempre que trabajes con un formato de identificación específico de tu país que la librería no cubre de fábrica.

Paso 5 — Generar un Lote y Exportarlo a CSV

Ejecutas

Y en la carpera del proyecto de genera un archivo .csv

Lo abres con excel y ya tienes tu data creada

Errores Comunes al Empezar

ErrorCausaSolución
UnsupportedClassVersionErrorEstás compilando con Java 11 o menorActualiza a Java 17+, o usa Datafaker 1.8.1
Nombres en inglés con locale “es”Algunos providers no tienen datos completos para todos los localesEs normal — Datafaker complementa con datos en inglés cuando falta cobertura en un idioma
Datos distintos en cada ejecución sin quererNo usaste una semilla (Random) fijaUsa new Faker(new Random(numero_fijo)) cuando necesites reproducibilidad
Cédula con longitud incorrecta para tu casoEl generador personalizado usa 8-10 dígitos por defectoAjusta el rango en numberBetween() según el formato que necesites

Con esto tienes un generador completo de datos sintéticos para testing: datos personales, financieros, un identificador personalizado, exportación masiva a CSV y reproducibilidad con semillas. Es exactamente el tipo de herramienta que cualquier QA en un sector regulado necesita tener a la mano — sin depender nunca de información real de clientes.

Si tienes dudas sobre cómo adaptar el generador de cédula a otro país, o quieres agregar más campos (por ejemplo, datos de tarjeta con fecha de vencimiento simulada), escríbeme a contacto@mundoqa.com.

Documentación oficial de Datafaker: github.com/datafaker-net/datafaker

JEscorcia
JEscorcia