Gerador de massa de testes

Monte uma massa de dados fictícios para testes em segundos: escolha os campos, a quantidade e os intervalos, e exporte em JSON ou CSV. Com uma semente, a mesma massa é gerada de novo, o que ajuda a reproduzir um bug. Nenhum dado vem de pessoas reais.

Campos

Todos os dados são sintéticos: nomes combinados ao acaso, e-mails no domínio reservado example.com e CPFs com dígitos verificadores calculados sobre números aleatórios. Um CPF sintético pode coincidir por acaso com um número emitido, por isso use-o só em ambientes de teste. Com a mesma semente, a mesma massa é gerada de novo.

Resultado

Como usar

  1. Marque os campos desejados: id, uuid, nome, email, cpf_sintetico, data, numero e ativo.
  2. Defina a quantidade (1 a 1000), o intervalo de datas e o de números.
  3. Opcionalmente, informe uma semente, como sprint-42. A mesma semente com as mesmas opções gera sempre a mesma massa.
  4. Escolha JSON ou CSV, clique em Gerar massa e depois copie ou baixe o arquivo.

Exemplo de saída (JSON)

[
  {
    "id": 1,
    "nome": "Vitória Silva",
    "email": "vitoria.silva@example.com",
    "data": "1978-03-23",
    "numero": 412
  }
]

De onde vêm os dados

CampoComo é gerado
nomeCombinação aleatória de listas de nomes e sobrenomes comuns. Não corresponde a nenhuma pessoa específica.
emailNome e sobrenome sem acentos no domínio example.com, reservado para documentação e testes pela RFC 2606. Mensagens enviadas para ele não chegam a ninguém. Repetições recebem número.
cpf_sintetico9 dígitos aleatórios mais os 2 verificadores calculados pelo módulo 11. Passam na validação matemática.
uuidFormato UUID v4.
dataDia aleatório dentro do intervalo, no formato ISO 8601 (aaaa-mm-dd).
numeroInteiro aleatório dentro do intervalo, limites incluídos.
ativotrue ou false, com 50% de chance cada.

Atenção com o CPF sintético: como os números são aleatórios e válidos, um deles pode coincidir por acaso com um CPF emitido de verdade. Use-os só em ambientes de teste, nunca em sistemas que consultem bases reais ou enviem dados para terceiros. Alguns ambientes exigem números de uma lista própria de testes; nesse caso, siga a regra do seu time.

Como funciona

Sem semente, os valores usam o gerador criptográfico do navegador (crypto.getRandomValues). Com semente, o texto informado vira um número (hash FNV-1a) que alimenta um gerador pseudoaleatório determinístico (mulberry32). Por isso a mesma semente reproduz exatamente os mesmos registros, em qualquer navegador.

Na exportação CSV, valores com vírgula, aspas ou quebra de linha vão entre aspas, e textos que começam com =, +, - ou @ recebem um apóstrofo para não virarem fórmula ao abrir no Excel (injeção de CSV). O arquivo sai em UTF-8 com BOM, para manter os acentos no Excel.

Uso em QA e desenvolvimento

  • Popular bancos e ambientes de homologação sem copiar dados de produção (o que também evita problemas com a LGPD).
  • Criar fixtures para Cypress, Playwright ou Robot Framework e data-driven tests.
  • Testar importação de CSV, paginação, ordenação e filtros com volume.
  • Reproduzir um bug com a mesma massa: anote a semente no relato.

Limitações

  • Até 1000 registros por vez e os campos listados. Formatos específicos do seu sistema exigem ajuste depois.
  • Os nomes saem de listas curtas, então há repetições em massas grandes. Os e-mails continuam únicos.
  • A semente reproduz a massa nesta versão da ferramenta. Se as listas ou a ordem dos campos mudarem no futuro, o resultado de uma semente também muda.

Perguntas frequentes

Posso usar esses dados em produção?

Não. São dados para teste. Em produção eles poluiriam a base e, no caso do CPF, poderiam coincidir com o de alguém.

Por que example.com?

Porque o domínio é reservado para exemplos e testes. Um e-mail de teste disparado por engano não chega a uma pessoa real, como poderia acontecer com um domínio inventado.

A massa é enviada a algum servidor?

Não. Tudo é gerado no seu navegador, e o arquivo baixado é criado localmente.

Ferramentas relacionadas

Referências