Um handler de webhook precisa de testes para falha de entrega além de sucesso. Um teste que para na resposta de envio não consegue confirmar como sua aplicação lida com o evento posterior.
Destinos mágicos permitem exercitar esses resultados sem alcançar uma caixa de entrada ou aparelho real. A validação da solicitação continua valendo, então eles também expõem envios malformados.
Como envio uma solicitação de teste?
Envie para um destino mágico reconhecido usando suas credenciais e endpoint normais do API.
Não há modo de teste para ativar. Para e-mail, use um endereço documentado no messagebird.dev. Para SMS, use um dos números abaixo.
Destinatários simulados seguem os caminhos normais de evento e webhook assinado. Eles não exercitam a entrega para infraestrutura externa. Portanto, não conseguem verificar posicionamento real na caixa de entrada ou renderização no aparelho.
Use apenas destinos mágicos reconhecidos quando um teste não deve contatar ninguém. Uma solicitação pode misturar destinatários simulados e reais. Destinatários reais são entregues normalmente.
Quais endereços de e-mail devo usar?
Use delivered@messagebird.dev para testar a aceitação pelo servidor de recebimento. Os outros endereços abaixo exercitam o tratamento de bounce, reclamação e rejeição.
| Endereço | Resultado |
|---|---|
delivered@messagebird.dev | O servidor de recebimento aceita a mensagem. |
bounce@messagebird.dev ou hardbounce@messagebird.dev | Hard bounce com SMTP 550; teste o tratamento de falha permanente. |
softbounce@messagebird.dev | Soft bounce com SMTP 451; teste a classificação de falha temporária. |
deferred@messagebird.dev ou delay@messagebird.dev | Um adiamento sem nova tentativa simulada subsequente. |
complaint@messagebird.dev ou spam@messagebird.dev | Uma reclamação de spam. |
suppressed@messagebird.dev | Rejeição como destinatário já suprimido, sem eventos de processamento ou entrega. |
reject@messagebird.dev | Rejeição antes de uma tentativa de entrega. |
A correspondência ignora maiúsculas e minúsculas. Ela remove +label antes de selecionar o resultado. Por exemplo, bounce+signup-flow@messagebird.dev ainda gera bounce. O endereço completo permanece nos eventos para que você possa associá-los a esse teste.
Apenas os nomes documentados nesse domínio são mágicos. bounce@yourdomain.com é um destinatário normal, assim como um nome não reconhecido em messagebird.dev.
Bounces e reclamações simulados não adicionam endereços à lista de supressão do Bird nem afetam a reputação de envio. Sua aplicação ainda recebe os eventos deles, então verifique como sua própria lógica de supressão os trata.
Testar entrega de e-mail lista as sequências completas de eventos e regras de correspondência.
Quais números de telefone devo usar?
Use +15005550006 para testar a entrega bem-sucedida de SMS. Os outros números abaixo exercitam caminhos de rejeição e falha.
| Destino | Resultado |
|---|---|
+15005550001 | Rejeição de envio com invalid_destination. |
+15005550002 | sms.sent, depois sms.undelivered com unreachable. |
+15005550003 | sms.sent, depois sms.failed com provider_unavailable. |
+15005550004 | sms.sent, depois sms.failed com blocked_by_carrier. |
+15005550006 | sms.sent, depois sms.delivered. |
+15005550009 | sms.sent, depois sms.failed com recipient_opted_out. |
Ative os Estados Unidos em Destinos. Use um remetente from válido para os EUA. Um remetente alfanumérico é rejeitado lá, então não consegue testar esses números com sucesso.
Um envio para +15005550006 pode testar seu handler de sucesso. Use +15005550002 para verificar o caminho separado de não entregue. O guia de migração do SMS inclui uma sequência de smoke test.
Quanto custa ou o que muda ao testar?
Envios simulados consomem limites reais e podem afetar suas estatísticas.
Um SMS para um magic number é cobrado pela tarifa normal do destino. Limite testes repetidos porque cada envio simulado pode gerar uma cobrança.
Um destinatário de e-mail simulado conta contra seu limite de envio. O tráfego de sandbox de e-mail também entra nas estatísticas agregadas, incluindo taxas de bounce e reclamação. Separe-o na sua análise para que falhas de teste não pareçam problemas de entrega de clientes.
Como identifico um resultado de teste?
Associe o evento ao destinatário de teste ou ao identificador de mensagem que você registrou no envio.
Um e-mail simulado aceito retorna 202 e formatos de evento normais. Não há flag de teste no payload. A aceitação sozinha, portanto, não identifica um teste.
Use um label de destinatário como bounce+signup-flow@messagebird.dev para associar eventos de e-mail a uma execução. Você também pode consultar a timeline ou os eventos API da mensagem de e-mail sem operar um receptor de webhook.
Mantenha uma verificação de entrega real separada quando precisar confirmar renderização ou recebimento. Destinos mágicos não testam essas partes do caminho de entrega.
Em resumo
O destino seleciona o resultado do teste.
Use sua chave e endpoints normais do API. Endereços e números reconhecidos disparam resultados de entrega simulados.
Limite os testes a destinos mágicos conhecidos.
Uma solicitação pode misturar destinatários simulados e reais. Endereços não reconhecidos são tratados como destinatários normais.
Testes ainda consomem limites reais.
Destinatários de e-mail simulados consomem limite de envio. Magic numbers do SMS são cobrados pela tarifa normal do destino.
Registre quais mensagens pertencem a um teste.
Eventos não têm flag de teste. Labels de e-mail permanecem nos endereços dos destinatários, permitindo identificar uma execução de teste nos seus eventos.