Configuração Segura em Produção
Execute testes sintéticos em produção sem afetar dados reais.
O Padrão is_synthetic_test
Adicione uma flag ao seu banco de dados para marcar dados gerados por testes:
ALTER TABLE users ADD COLUMN is_synthetic_test BOOLEAN DEFAULT FALSE;
ALTER TABLE orders ADD COLUMN is_synthetic_test BOOLEAN DEFAULT FALSE;
-- Adicione a qualquer tabela que seus testes vão escrever
Crie uma Conta de Teste
- Crie uma conta dedicada para testes (ex:
dinho-monitor@seuapp.com) - Adicione lógica de limpeza no seu app para dados sintéticos:
// Exemplo: middleware de limpeza
if (sessao.usuario.isSyntheticTest) {
// Não enviar emails reais
// Não cobrar cartões reais
// Marcar registros criados com is_synthetic_test=true
}
Armazene as Credenciais no Dinho
O Dinho tem um cofre de credenciais criptografado com AES-256-GCM. Use-o para armazenar as credenciais da conta de teste — elas ficam disponíveis no script como credentials.<LABEL>.
Via MCP (recomendado): peça ao agente para criar as credenciais:
Crie credenciais de teste para o projeto: EMAIL e PASSWORD
O agente vai chamar dinho_create_credentials, criar os placeholders e retornar o link do dashboard para você preencher os valores.
Via dashboard: acesse Dashboard → Projeto → Credenciais e adicione manualmente.
No script, acesse assim:
// No playwrightScript do dinho_create_test:
await page.goto("https://seuapp.com/login");
await page.fill('[name="email"]', credentials.EMAIL);
await page.fill('[name="password"]', credentials.PASSWORD);
O Que NÃO Testar em Produção
- Fluxos de pagamento com cartões reais
- E-mails que notificam usuários reais
- Operações destrutivas (excluir conta, etc.)
Use a flag is_synthetic_test para pular esses caminhos quando executar pelo Dinho.