O que é um IBAN de teste?
Um IBAN de teste é um International Bank Account Number sintético criado para exercitar o comportamento de um software. Pode ser usado em campos de pagamento, seletores de país, normalização, fixtures de API, testes de navegador, demonstrações, formação e documentação. O valor pode seguir o comprimento e as classes de caracteres do país escolhido e passar pelo checksum matemático necessário ao seu código.
A palavra importante é teste. Um valor gerado não localiza uma conta real, não identifica um beneficiário e não consulta um diretório bancário. O gerador IBAN em massa cria linhas sintéticas e o verificador de IBAN analisa a cadeia fornecida; nenhum dos dois contacta um banco.
- Uso adequado: validação de formulários, parsers, fixtures, regressões, demos e documentação técnica.
- Uso inadequado: transferências, débitos diretos, criação de beneficiários, prova de titularidade ou descoberta de contas.
- Guarde a finalidade, o limite do ambiente e a regra de limpeza junto ao fixture.
Dados sintéticos não são uma conta bancária real
Um valor sintético serve para exercitar um formato. Pode ter o prefixo de país correto, o comprimento esperado, classes de caracteres BBAN plausíveis e resto MOD-97 igual a 1. Estas verificações respondem apenas a uma pergunta de engenharia: a cadeia é estruturalmente compatível com a regra escolhida?
Um IBAN emitido por um banco responde a outras perguntas. Pode estar ligado a uma conta, banco, agência, moeda, beneficiário e estado atual. Uma verificação local não demonstra esses factos a partir dos caracteres.
| Pergunta | O que um IBAN de teste pode ajudar a testar | O que não pode provar |
|---|---|---|
| Cabe na regra do país? | Código de país, comprimento fixo e padrão BBAN amplo. | Que um banco o emitiu. |
| Passa o checksum? | Comportamento do MOD-97 e mensagens de erro. | Que existe uma conta ou que pode receber dinheiro. |
| O formulário guarda o valor? | Espaços, minúsculas, copiar/colar, API e limites da base de dados. | Que o beneficiário é o titular. |
| O pagamento funciona? | Apenas um fluxo sandbox simulado, se o fornecedor o suportar. | Alcance em produção, titularidade ou liquidação. |
Valide um IBAN de teste em três camadas
Um fixture útil não é apenas uma cadeia aleatória. Comece pelo formato registado do país e teste cada camada separadamente. O diretório de países IBAN ajuda a comparar comprimentos e padrões BBAN; o descodificador IBAN mostra as partes visíveis de um valor completo.
Primeiro confirme o código do país e o comprimento total. Depois verifique se o BBAN aceita caracteres numéricos, alfabéticos ou alfanuméricos. Por fim execute MOD-97-10. Inclua valores que passam e falhas intencionais, porque o tratamento do erro também faz parte do contrato.
- 1. País e comprimentoSelecione um país suportado e confirme o comprimento fixo registado para o valor completo.
- 2. Padrão de caracteresConfirme que cada campo nacional aceita os dígitos ou letras definidos pela regra.
- 3. Checksum MOD-97Execute o cálculo internacional e confirme o resto esperado.
- 4. Limite de negócioRegiste que o resultado é apenas estrutural; não o transforme numa afirmação de titularidade ou pagamento.
- Separe o erro de comprimento do erro de checksum para explicar o primeiro problema útil.
- Altere um único dígito de controlo num fixture válido para testar um erro preciso.
- Use uma letra num campo numérico apenas quando o caso negativo for intencional e estiver documentado.
Fluxo seguro para um fixture de QA
Trate um IBAN de teste como qualquer fixture sintético: defina o objetivo, gere-o com uma regra conhecida, valide-o, etiquete-o e mantenha-o dentro do ambiente que precisa dele. Uma cadeia matematicamente válida pode ser perigosa se for parar a uma seed de produção, exportação de clientes, fatura ou lista de beneficiários.
Para poucos casos, crie um valor com o gerador da página inicial. Para uma matriz ou regressão, use o gerador em massa para exportar CSV ou JSON e acrescente país, comprimento, resultado esperado, finalidade e responsável pela limpeza ao seu fixture.
- DefinirEscreva o país, o comportamento do campo, o resultado esperado e o motivo do fixture.
- GerarCrie valores sintéticos segundo a regra do país; não copie contas de clientes.
- ValidarExecute asserções de comprimento, padrão e MOD-97 e guarde o resultado esperado.
- Isolar e limparMantenha o fixture em datasets de teste, bloqueie a promoção e elimine ou rode os valores após a execução.
Crie uma matriz de testes, não apenas um caso feliz
Um único valor aprovado prova muito pouco. Cubra vários comprimentos e padrões BBAN, formato impresso com espaços, formato eletrónico compacto, letras minúsculas, um dígito alterado e valores demasiado curtos ou longos. Se um fornecedor de pagamentos disponibilizar identificadores próprios de sandbox, siga a sua documentação e mantenha-os separados dos fixtures genéricos.
Guarde no fixture o país, o resultado esperado, o formato de apresentação e o motivo do erro para reproduzir tanto o sucesso como a falha.
- Guarde os resultados esperados junto aos fixtures para rever alterações no validador.
- Use IDs descritivos como iban-de-length-22-valid em vez de uma cadeia aleatória sem etiqueta.
- Não inclua nomes, cartões, faturas ou extratos reais num caso sintético.
| Caso | O que verificar | Resultado esperado |
|---|---|---|
| Formato curto | Comprimento e disposição BBAN do país. | Aceite quando regra e checksum coincidem. |
| Formato longo | Largura máxima e serialização na API/base de dados. | Aceite sem truncamento ou espaços ocultos. |
| Entrada impressa | Espaços a cada quatro caracteres e normalização. | Normalizada antes da validação. |
| Entrada em minúsculas | Normalização dos campos alfabéticos. | Normalizada com segurança ou rejeitada claramente. |
| Um dígito alterado | Caminho de erro do checksum. | Rejeitado por inconsistência matemática. |
| Um carácter a menos ou a mais | Prioridade do erro de comprimento. | Rejeitado antes de mostrar um sucesso enganador. |
| Fixture numa seed de produção | Guarda de CI ou marcador de ambiente. | Bloqueado antes da publicação. |
Erros comuns e limites práticos
O erro mais comum é tratar fake IBAN como se significasse um valor seguro para pagar. Em código e documentação, prefira IBAN de teste, IBAN sintético ou fixture IBAN. Para uma transferência real, obtenha os dados junto do banco ou fornecedor autorizado.
Outro erro é tratar um verificador como uma consulta bancária. A ferramenta pode explicar os caracteres, mas não sabe se o identificador está ativo, se a conta pertence a uma pessoa, se o beneficiário passou por controlos ou se o pagamento será liquidado.
- Não chame um valor sintético de oficial, seguro para pagar, atribuído ou verificado por titularidade.
- Não deduza um IBAN a partir de um nome, cartão, conta local ou captura de ecrã.
- Não publique um fixture numa fatura, instrução de reembolso, ficheiro salarial ou mandato de débito direto.
- Não inclua nomes, cartões, faturas ou extratos reais num caso sintético.
FAQ sobre IBAN de teste
O que é um IBAN de teste?
É um valor sintético para testar formulários, parsers, mensagens de validação, fixtures, fluxos de navegador ou documentação. Não é uma conta emitida por um banco.
Um número IBAN de teste é igual a um IBAN real?
Não. Pode seguir o formato de um país e passar MOD-97, mas estar sem atribuição ou não servir para um pagamento. Trate-o apenas como dado de teste.
Um checksum válido prova que a conta existe?
Não. O checksum é uma verificação matemática e não prova atribuição bancária, estado, identidade, titularidade, sanções ou alcance do pagamento.
Posso usar um IBAN de teste em produção?
Não. Mantenha-o em desenvolvimento, QA, staging, demos, documentação ou formação e impeça a promoção por meio de guardas de ambiente.
O que deve incluir uma matriz de testes IBAN?
Inclua comprimentos e padrões de vários países, formatos impresso e eletrónico, minúsculas, dígito alterado, valores curtos e longos, normalização e um bloqueio contra dados de produção.
Que casos deve conter uma matriz de QA?
Inclua vários comprimentos e padrões BBAN, formatos impresso e eletrónico, minúsculas, um dígito de controlo alterado, valores curtos e longos, normalização e uma guarda contra dados de produção.
Conclusão
Os IBANs de teste permitem exercitar campos de pagamento específicos de cada país sem copiar dados bancários de clientes para o desenvolvimento. O padrão seguro é gerar um valor sintético, validar a estrutura e o checksum, guardar o resultado esperado e manter o fixture isolado.
Uma cadeia que parece válida continua a ser apenas uma cadeia. Use dados emitidos por um banco ou fornecedor autorizado quando houver uma transação real.
Referências de formatos e testes
- Registo IBAN da Swift — Formatos registados por país e contexto do registo IBAN.
- Gerador IBAN do PayPal — Exemplo de geração de valores para sandbox e testes.
- IBANs de teste da Rapyd — Documentação de fornecedor sobre valores de teste e regras de sandbox.
- Números IBAN de teste — Referência de terceiros; os exemplos são dados de teste, não contas reais.