Esquemas e tipos

Gerador de Dados JSONAmostras reproduzíveis a partir do contrato

Defina a quantidade e a semente; cada instância será validada pelo schema.

Gerador de Dados JSON

JSON Schema

Instâncias geradas

O esquema e os dados ficam neste navegador, sem envio.

Opções de geração

Cada registro segue individualmente o esquema de entrada.

Confira o esquema e gere os dados.

Gerador de Dados JSON prepara dados fictícios para testes de API quando o contrato já existe. Defina campos obrigatórios e valores permitidos em vez de copiar cadastros de produção para um ambiente de desenvolvimento.

O JSON Schema descreve cada registro, enquanto a quantidade controla o lote externo. Nomes de campos não criam automaticamente relações de negócio: um endereço e uma cidade continuam sendo valores sintéticos independentes.

Por que usar Gerador de Dados JSON

Repetir o mesmo teste

Guarde o esquema, a semente e as opções junto ao fixture. Com a mesma versão do motor, o mesmo lote pode ser reproduzido. Assim, uma falha continua investigável sem depender de dados reais que mudam.

Uma semente gera dois grupos iguais de registros sintéticos.

Explorar extremos válidos

O modo Limites busca valores viáveis nas extremidades de números, comprimentos e tamanhos de coleções. Cada candidato passa por uma validação independente; uma regra não aceita interrompe a geração em vez de virar um valor improvisado.

Amostras em limites válidos passam pela verificação; restrições não aceitas são bloqueadas.

Preparar um caso reproduzível

01

Distinguir registros de itens

O padrão é 5 registros e semente 42. Se a raiz do esquema for um array, cada amostra também será um array. Use minItems e maxItems para controlar os itens internos. Semente: inteiro entre 0 e 4294967295.

02

Executar depois de revisar

Escolha Normal ou Limites, depois Gerar ou Ctrl/Cmd+Enter. Qualquer mudança torna o resultado anterior indisponível para exportação. Parar cancela o trabalho e uma tarefa antiga não pode sobrescrever o novo resultado.

03

Ler o relatório antes de baixar

Corrija os caminhos indicados e gere novamente. Exemplo e Limpar mostram uma prévia antes de Aplicar, com uma etapa de Desfazer. JSONL mantém uma instância completa em cada linha.

O que orienta a geração

Estruturas aninhadas

properties, required e additionalProperties controlam os objetos. Omitir uma propriedade opcional é diferente de atribuir null: o esquema daquela propriedade precisa permitir esse valor.

Interseção de restrições

Listas type, enum e const são avaliadas junto às regras vizinhas. Um número presente em enum ainda será rejeitado se ultrapassar o maximum definido no mesmo esquema.

Unicidade dentro do array

uniqueItems se aplica a cada array e não torna todos os registros do lote diferentes. Limites de comprimento, quantidade de itens e quantidade de propriedades também orientam a geração.

Dois formatos de fixture

JSON sempre envolve os registros em um array externo, mesmo com quantidade 1. JSONL grava um valor JSON independente por linha, incluindo arrays e valores primitivos. O esquema valida os registros, não a embalagem extra do arquivo. JSON usa recuo fixo de dois espaços; JSONL mantém cada instância em uma linha.

Escopo e limites práticos

Subconjunto explícito de draft-07
Esquemas booleanos, listas type, enum, const, properties, required, additionalProperties, items com esquema único, uniqueItems, tamanhos e limites numéricos inclusivos ou exclusivos são aceitos. Declare type: restrições isoladas podem permitir candidatos de outro tipo.
Restrições recusadas
Referências, combinações, condições, pattern, format, multipleOf, items em tupla e palavras desconhecidas são reportadas com caminho. Objetos literais em enum e const são dados e suas chaves não são tratadas como regras.
Limites sem exaustividade
O modo Limites continua gerando dados válidos. Ele não injeta erros nem enumera todos os extremos e combinações. Um domínio pequeno pode produzir resultados iguais mesmo com sementes diferentes.
Orçamento de processamento
De 1 a 100 registros. Esquema de até 100000 caracteres, profundidade AST 12 e 2000 nós, incluindo contêineres de properties e enum. Strings geradas de até 1000 unidades de código UTF-16; arrays e objetos de até 100 entradas. Há limites de tentativas, operações e cinco segundos. Orçamento total: 20000 operações e 1000000 caracteres de saída. Os limites de strings e coleções também valem para const e enum. A semente deve ser um inteiro entre 0 e 4294967295.
Falha não prova impossibilidade
Regras contraditórias, poucas opções únicas ou orçamento esgotado podem impedir uma amostra. Exceder o orçamento do gerador não demonstra que o esquema não possua solução matemática.
Valores sintéticos
Não há banco de nomes, pacotes regionais, correlações entre campos, API mock hospedada, importação de URL ou armazenamento na nuvem. Números além da precisão aceita são recusados em vez de arredondados silenciosamente. Os números devem ser finitos e os inteiros estar na faixa segura do JavaScript. Converter o token numérico em Number e de volta em texto deve preservar o valor decimal.

Gerador de Dados JSON: dúvidas

Os dados gerados são reais?

Não. Gerador de Dados JSON cria valores sintéticos para fixtures, testes e demonstrações. Seguir a estrutura do esquema não torna os valores dados de pessoas reais nem garante coerência de negócio.

Qual o limite de registros?

Você pode pedir entre 1 e 100 registros por execução. Coleções internas obedecem ao esquema e ao orçamento; estruturas muito grandes podem falhar mesmo em um lote pequeno.

O JSON gerado é válido?

Sim, cada instância publicada passa por validação independente dentro do subconjunto aceito. Restrições desconhecidas ou uma geração sem solução encontrada produzem erro, sem exportar resultados parciais.

Posso criar meus próprios campos?

Sim. Defina as propriedades no JSON Schema com os tipos e limites aceitos. Não há um editor visual de colunas nem inferência automática de campos a partir de dados reais.

Os dados são salvos?

Não há envio ou armazenamento em nuvem. A leitura do esquema, a geração e a validação acontecem no navegador. Baixe o resultado se quiser preservá-lo.

Qual outra restrição você precisa?

Experimentar Gerador de Dados JSON

Use Gerador de Dados JSON com um contrato pequeno e compare os modos Normal e Limites com as verificações dos seus testes.

Salve o esquema, a semente e as opções junto ao fixture para outra pessoa conseguir repetir o caso.