Generador de Datos Falsos (Mock Data) Avanzado

Crea grandes volúmenes de datos de prueba estructurados (JSON, CSV, SQL) para tus proyectos. Define esquemas personalizados, aprovecha la versatilidad de Chance.js y genera datos eficientemente con Web Workers.

Definición del Esquema de Datos

Configuración de Generación

Máx. 100,000 para evitar sobrecarga del navegador.

Usar una semilla asegura datos reproducibles.

Gestión de Esquemas de Datos

Guarda tus esquemas de datos para reutilizarlos fácilmente en el futuro.

Genera Datos Ficticios al Instante con Optikit

El Generador de Datos Falsos (Mock Data) Avanzado de Optikit es una poderosa herramienta diseñada para desarrolladores, testers y cualquier persona que necesite datos estructurados para poblar bases de datos, realizar pruebas de software, crear prototipos o realizar demostraciones. En lugar de crear manualmente datos de ejemplo, lo que puede ser tedioso y propenso a errores, esta herramienta te permite definir un esquema y generar miles de registros realistas en segundos.

Utilizamos la versátil librería Chance.js bajo el capó, que ofrece una enorme variedad de tipos de datos falsos, desde nombres y direcciones hasta emails, IPs, texto aleatorio y mucho más. Además, para manejar la generación de grandes volúmenes de datos sin congelar tu navegador, hemos implementado la generación en un Web Worker, lo que significa que el trabajo pesado se realiza en un hilo separado, manteniendo la interfaz fluida y responsiva.

Beneficios Clave:

  • Ahorro de Tiempo Masivo: Olvídate de escribir datos de prueba a mano. Define tu estructura una vez y genera tantos registros como necesites.
  • Datos Realistas y Variados: Gracias a Chance.js, los datos generados (nombres, emails, direcciones) parecen reales, lo que mejora la calidad de tus pruebas y prototipos.
  • Esquemas Personalizables: Define los campos exactos que necesitas, sus tipos de datos y opciones específicas para cada uno.
  • Múltiples Formatos de Salida: Obtén tus datos en JSON (ideal para APIs y NoSQL), CSV (para hojas de cálculo y análisis) o como sentencias SQL INSERT (listas para tu base de datos).
  • Alto Rendimiento con Web Workers: Genera decenas de miles de registros sin bloquear la interfaz de tu navegador. Incluye una barra de progreso.
  • Reproducibilidad: Usa una "semilla aleatoria" (seed) para generar el mismo conjunto de datos cada vez, esencial para pruebas consistentes.
  • Gestión de Esquemas: Guarda tus esquemas de datos definidos en el LocalStorage de tu navegador para reutilizarlos fácilmente.

Con el Generador de Datos Falsos de Optikit, acelera tus ciclos de desarrollo y prueba, y crea demos más convincentes.

Guía Paso a Paso: Generando tus Datos

  1. Define tu Esquema de Datos:
    • En la sección "Definición del Esquema de Datos", haz clic en " Añadir Campo al Esquema".
    • Para cada campo añadido:
      • Nombre del Campo: Dale un nombre descriptivo y único (ej. nombre_usuario, email_cliente, fecha_registro). Este será el nombre de la clave en JSON o la cabecera en CSV/SQL.
      • Tipo de Dato: Selecciona el tipo de dato que deseas generar de la lista desplegable (ej. "Nombre Completo", "Email", "Entero", "Fecha").
      • Opciones del Tipo (si aplica): Al seleccionar un tipo, pueden aparecer opciones adicionales. Por ejemplo, para "Entero", puedes definir "Mínimo" y "Máximo". Para "String Aleatorio", puedes definir "Longitud", "Caracteres (Pool)", etc. Completa estas opciones según tus necesidades.
    • Añade tantos campos como necesite tu estructura de datos. Puedes eliminar campos con el botón " Eliminar Campo".
  2. Configura la Generación:
    • Número de Registros: Especifica cuántos registros (filas de datos) quieres generar.
    • Semilla Aleatoria (Opcional): Si quieres que los datos generados sean siempre los mismos con la misma configuración, introduce cualquier texto o número aquí. Déjalo vacío para datos completamente aleatorios cada vez.
    • Formato de Salida: Elige JSON, CSV o SQL. Si seleccionas SQL, aparecerá un campo para "Nombre de Tabla SQL".
  3. Genera los Datos:
    • Haz clic en " Generar Datos Ahora".
    • Una barra de progreso te mostrará el avance si estás generando muchos registros.
    • El botón se desactivará temporalmente mientras se generan los datos.
  4. Revisa y Usa los Resultados:
    • En la sección "Resultados", verás:
      • Una "Previsualización" de los primeros 10 registros.
      • Los "Datos Generados Completos" en un área de texto.
    • Usa los botones " Copiar Datos Completos" o " Descargar como Archivo" para obtener tus datos.
  5. Gestiona tus Esquemas (Opcional):
    • Si has creado un esquema complejo que quieres reutilizar, en "Gestión de Esquemas", asígnale un "Nombre del Esquema" y haz clic en " Guardar Esquema Actual".
    • Para usar un esquema previamente guardado, selecciónalo del desplegable "Cargar Esquema Guardado". Los campos se cargarán automáticamente.
    • Puedes eliminar esquemas guardados seleccionándolos y haciendo clic en " Eliminar Esquema Seleccionado".

Algunos Tipos de Datos Populares de Chance.js

Esta herramienta utiliza Chance.js, que ofrece una gran variedad de generadores. Aquí algunos ejemplos comunes que puedes seleccionar:

  • Persona:
    • Nombre Completo, Nombre, Apellido: Con opciones de género y nacionalidad para mayor realismo.
    • Edad: Puedes especificar rangos como niño, adolescente, adulto, senior.
    • Género (texto): Devuelve "Male" o "Female".
  • Internet y Red:
    • Email: Emails con formato válido, con opción de dominio personalizado.
    • Nombre de Usuario: Similar a un handle de Twitter.
    • URL: URLs completas, con opciones para dominio, path, extensiones.
    • Dirección IP, UUID (GUID).
  • Texto:
    • Palabra, Frase, Párrafo: Con opciones para controlar la longitud o número de elementos.
    • String Aleatorio: Muy personalizable con longitud, pool de caracteres, mayúsculas/minúsculas, símbolos.
  • Números y Booleanos:
    • Entero, Punto Flotante: Con rangos configurables (mín/máx) y decimales fijos para flotantes.
    • Booleano: True o False, con probabilidad configurable.
  • Fecha y Hora:
    • Fecha: Con opciones para devolver como objeto Date de JS o como string, y especificar año, mes o día.
    • Timestamp Unix: Segundos desde la época Unix.
  • Ubicación (Soporte de nacionalidad limitado en Chance.js):
    • Dirección, Ciudad, País (nombre completo o código), Código Postal.
    • Latitud, Longitud (Geo): Coordenadas geográficas.
  • Finanzas (Básico):
    • Tipo Tarjeta Crédito, Número Tarjeta Crédito: Genera datos con formato de tarjeta (no son reales ni válidos).
  • Otros:
    • Color Hex: Códigos de color hexadecimales, con opciones de formato y escala de grises.

Explora la lista desplegable "Tipo de Dato" al añadir un campo para ver todas las opciones disponibles y sus configuraciones específicas.

Preguntas Frecuentes (FAQ)

¿Qué es Chance.js?

Chance.js es una librería de JavaScript diseñada para generar datos aleatorios de manera sencilla. Proporciona una amplia gama de funciones para crear desde strings, números y booleanos básicos hasta datos más complejos como nombres, direcciones, emails, fechas y mucho más. Es muy útil para crear datos de prueba (mock data).

¿Qué es un Web Worker y por qué se usa aquí?

Un Web Worker es una característica de JavaScript que permite ejecutar scripts en un hilo de fondo, separado del hilo principal de la interfaz de usuario del navegador. Lo usamos para la generación de datos porque si intentaras generar, por ejemplo, 50,000 registros en el hilo principal, el navegador se congelaría y la página no respondería hasta que terminara. Al usar un Web Worker, la generación ocurre en segundo plano, la interfaz sigue siendo responsiva, y te mostramos una barra de progreso.

¿Cuál es el límite de registros que puedo generar?

Hemos establecido un límite práctico de 100,000 registros en la interfaz para prevenir un uso excesivo de memoria en el navegador o en el Web Worker, lo que podría llevar a que la pestaña o el navegador fallen. Para la mayoría de los casos de prueba, esta cantidad es más que suficiente. La generación y el procesamiento (especialmente para formatos como CSV o SQL) consumen memoria.

¿Qué es una "Semilla Aleatoria" (Seed)?

Una semilla es un valor inicial que se usa para generar una secuencia de números (pseudo)aleatorios. Si usas la misma semilla con la misma configuración de esquema y número de registros, Chance.js generará exactamente el mismo conjunto de datos cada vez. Esto es extremadamente útil para pruebas reproducibles, donde necesitas que los datos de entrada sean consistentes entre ejecuciones.

¿Cómo funcionan las "Opciones del Tipo" para cada campo?

Muchos de los generadores de Chance.js aceptan opciones para personalizar la salida. Por ejemplo, para un entero, puedes especificar un rango mínimo y máximo. Para un nombre, puedes sugerir una nacionalidad. Cuando seleccionas un "Tipo de Dato", la interfaz mostrará los campos de opciones relevantes para ese tipo particular. Completa solo los que necesites; los demás usarán los valores por defecto de Chance.js.

¿Los datos generados son "reales" o completamente únicos?

Los datos son "falsos" o "ficticios", lo que significa que están diseñados para parecer reales en formato y tipo, pero no corresponden a personas o entidades reales (ej. los números de tarjeta de crédito no son válidos). La unicidad no está garantizada, especialmente con conjuntos de datos más pequeños o tipos de datos con un conjunto finito de posibilidades (ej. "Género (texto)"). Si necesitas unicidad estricta para un campo, tendrías que procesar los datos generados posteriormente.

¿Cómo se guardan y cargan los esquemas?

Los esquemas que defines (nombres de campo, tipos, y sus opciones) se pueden guardar con un nombre en el LocalStorage de tu navegador. Esto significa que son privados para ti y persisten en ese navegador. Luego puedes seleccionarlos de la lista "Cargar Esquema Guardado" para rellenar rápidamente la definición del esquema sin tener que configurarlo todo de nuevo.

¿Qué pasa si el Web Worker falla o da un error?

Hemos intentado manejar los errores dentro del worker. Si ocurre un error durante la generación (por ejemplo, una opción inválida para un tipo de Chance.js), el worker debería enviar un mensaje de error de vuelta a la página principal, que se mostrará en el área de "Estado de Generación". Si el error es más grave y el worker se interrumpe, el botón "Generar Datos" se reactivará y verás un mensaje de error general. Revisa la consola del navegador para más detalles si esto ocurre.

¿El formato SQL generado es compatible con todas las bases de datos?

El formato SQL generado son sentencias INSERT INTO estándar. Usa comillas invertidas (backticks `) para los nombres de tabla y columna (común en MySQL) y comillas simples para los valores de texto. Esto debería ser compatible con la mayoría de las bases de datos SQL (MySQL, PostgreSQL, SQL Server, SQLite). Sin embargo, algunos tipos de datos muy específicos o sintaxis particulares de una base de datos podrían requerir ajustes manuales.

¿Puedo definir relaciones entre campos (ej. que la ciudad coincida con el país)?

No directamente en esta herramienta. Chance.js genera cada campo de forma independiente según su tipo y opciones. Crear datos relacionales complejos (donde un campo depende de otro) está fuera del alcance de esta herramienta y requeriría una lógica de generación mucho más sofisticada o el uso de librerías especializadas en datos relacionales ficticios.

¿Por qué la previsualización solo muestra 10 registros?

La previsualización está limitada a los primeros 10 registros para mantener la interfaz rápida y evitar mostrar cantidades masivas de datos directamente en la página, lo cual podría ralentizar el navegador. Los datos completos siempre están disponibles en el área de texto "Datos Generados Completos" y para la descarga.

¿Este Generador de Datos Aceleró tu Trabajo?

Mantener y desarrollar estas herramientas gratuitas es posible gracias al apoyo de usuarios como tú.

Apoyar a Optikit