Testes & QA

Como Gerar Dados Fictícios para Testes sem Violar a LGPD

Aprenda a criar dados de teste realistas sem usar informações pessoais reais. Guia prático sobre LGPD, anonimização e ferramentas para QA e desenvolvedores.

13 de fevereiro de 20267 min de leituraDevThru

A LGPD (Lei Geral de Proteção de Dados) mudou a forma como empresas e desenvolvedores lidam com dados pessoais no Brasil. Se você usa dados reais de usuários em ambientes de teste, staging ou desenvolvimento, você pode estar violando a lei — mesmo sem intenção.

Neste guia, vamos mostrar como gerar dados fictícios realistas para testes sem nenhum risco legal.

O Que a LGPD Diz Sobre Dados de Teste?

A LGPD (Lei 13.709/2018) define que todo dado que identifica ou pode identificar uma pessoa é considerado dado pessoal. Isso inclui:

  • Nome completo
  • CPF e RG
  • Email pessoal
  • Endereço
  • Telefone
  • Dados bancários

Usar esses dados em ambientes de teste sem consentimento explícito viola o princípio da finalidade da LGPD — os dados foram coletados para um propósito específico, não para testes.

⚠️ Multas: A ANPD (Autoridade Nacional de Proteção de Dados) pode aplicar multas de até 2% do faturamento da empresa, limitadas a R$ 50 milhões por infração.

A Solução: Dados Fictícios

Dados fictícios são informações que parecem reais mas não pertencem a ninguém. Um CPF fictício segue o algoritmo de validação da Receita Federal, mas não está associado a uma pessoa real.

Vantagens dos dados fictícios

  • Conformidade legal: Zero risco de violação da LGPD
  • Realismo: Dados seguem formatos e validações reais
  • Escalabilidade: Gere milhares de registros instantaneamente
  • Reprodutibilidade: Testes consistentes sem dependência de dados reais

Tipos de Dados Fictícios para Testes

Veja o que você pode gerar e onde usar:

DadoFormatoFerramenta DevThru
CPFXXX.XXX.XXX-DDGerador de CPF
CNPJXX.XXX.XXX/XXXX-DDGerador de CNPJ
Nome completoNome + SobrenomeGerador de Nomes
EndereçoRua, Cidade, CEPGerador de Endereços
Emailnome@dominio.comGerador de Email
Telefone(XX) XXXXX-XXXXGerador de Telefone
Pessoa completaPerfil inteiroGerador de Pessoa
Cartão de créditoXXXX XXXX XXXX XXXXGerador de Cartão

Estratégias de Geração por Cenário

1. Testes Unitários e de Integração

Para testes automatizados, gere dados diretamente no código:

// factories/user.js — Factory Pattern para testes
function createTestUser(overrides = {}) {
  return {
    name: 'Maria Silva Santos',
    cpf: '529.982.247-25',     // CPF fictício válido
    email: 'maria.silva@email.com',
    phone: '(11) 98765-4321',
    address: {
      street: 'Rua das Flores',
      number: '123',
      city: 'São Paulo',
      state: 'SP',
      zip: '01234-567'
    },
    ...overrides                // Permite customização
  };
}

// Uso no teste
it('deve cadastrar usuário com sucesso', () => {
  const user = createTestUser();
  const result = cadastrarUsuario(user);
  expect(result.success).toBe(true);
});

2. Testes de Carga e Performance

Para popular bases de dados com milhares de registros:

import json
import random

def gerar_massa_dados(quantidade: int) -> list:
    """Gera massa de dados fictícios para testes de carga."""
    nomes = ['Ana', 'Carlos', 'Maria', 'João', 'Julia']
    sobrenomes = ['Silva', 'Santos', 'Oliveira', 'Souza', 'Lima']
    
    dados = []
    for i in range(quantidade):
        dados.append({
            'id': i + 1,
            'nome': f'{random.choice(nomes)} {random.choice(sobrenomes)}',
            'email': f'user{i}@teste.dev',
            'ativo': random.choice([True, False])
        })
    return dados

# Gera 10.000 registros para teste de carga
massa = gerar_massa_dados(10000)
with open('test_data.json', 'w') as f:
    json.dump(massa, f, ensure_ascii=False, indent=2)

3. Anonimização de Dados Reais

Se você precisa usar a estrutura de dados reais (ex: testar migrações), anonimize antes:

import hashlib

def anonimizar_email(email: str) -> str:
    """Substitui email real por hash irreversível."""
    hash_email = hashlib.sha256(email.encode()).hexdigest()[:8]
    return f'{hash_email}@anonimizado.dev'

def anonimizar_cpf(cpf: str) -> str:
    """Substitui CPF real por fictício válido."""
    return '529.982.247-25'  # Use um gerador real

# Antes: joao.silva@empresa.com → Depois: a3f8b2c1@anonimizado.dev

Checklist LGPD para Ambientes de Teste

  1. ✅ Nunca copie dados de produção para ambientes de teste
  2. ✅ Use geradores de dados fictícios
  3. ✅ Se precisar de dados reais, anonimize com hash irreversível
  4. ✅ Implemente controle de acesso nos ambientes de teste
  5. ✅ Documente o processo de geração de dados de teste
  6. ✅ Defina políticas de retenção (delete dados de teste antigos)
  7. ✅ Treine a equipe sobre LGPD e dados de teste

Perguntas Frequentes

Posso usar dados fictícios em homologação?

Sim! Dados fictícios gerados por algoritmos são a forma mais segura de popular ambientes de homologação e staging.

E se meu teste precisa de dados "reais"?

Use a técnica de anonimização: copie a estrutura dos dados mas substitua as informações pessoais por dados fictícios ou hashes.

O DevThru armazena os dados que eu gero?

Não. Todas as ferramentas do DevThru processam dados localmente no seu navegador. Nenhum dado gerado é enviado para servidores.

🛠️ Experimente na prática

Use nossas ferramentas online gratuitas — sem cadastro, direto no navegador.

LGPDtestesdados fictíciosQAprivacidademock data