Handler webhooków wymaga testów zarówno dla nieudanego dostarczenia, jak i dla sukcesu. Test, który kończy się na odpowiedzi wysyłki, nie potwierdzi, jak Twoja aplikacja obsługuje późniejsze zdarzenie.
Magiczni adresaci pozwalają przetestować te scenariusze bez docierania do prawdziwej skrzynki odbiorczej lub telefonu. Walidacja żądań nadal obowiązuje, więc ujawnią też błędnie sformułowane wysyłki.
Jak wysłać żądanie testowe?
Wyślij na rozpoznanego magicznego adresata, używając normalnych danych uwierzytelniających i endpointu API.
Nie ma trybu testowego do włączenia. Dla e-mail użyj udokumentowanego adresu w domenie messagebird.dev. Dla SMS użyj jednego z poniższych numerów.
Symulowani odbiorcy przechodzą normalne ścieżki zdarzeń i podpisanych webhooków. Nie testują dostarczania do zewnętrznej infrastruktury. Nie mogą więc zweryfikować rzeczywistego umieszczenia w skrzynce odbiorczej ani renderowania na telefonie.
Używaj wyłącznie rozpoznanych magicznych adresatów, gdy test nie może kontaktować nikogo. Żądanie może łączyć symulowanych i rzeczywistych odbiorców. Rzeczywiści odbiorcy otrzymują wiadomości normalnie.
Jakich adresów e-mail użyć?
Użyj delivered@messagebird.dev, aby przetestować akceptację przez serwer odbierający. Pozostałe poniższe adresy testują obsługę odrzuceń (bounce), skarg i odmów.
| Adres | Wynik |
|---|---|
delivered@messagebird.dev | Serwer odbierający akceptuje wiadomość. |
bounce@messagebird.dev lub hardbounce@messagebird.dev | Twarde odrzucenie (hard bounce) z SMTP 550; testuje obsługę trwałych błędów. |
softbounce@messagebird.dev | Miękkie odrzucenie (soft bounce) z SMTP 451; testuje klasyfikację tymczasowych błędów. |
deferred@messagebird.dev lub delay@messagebird.dev | Odroczenie bez późniejszej symulowanej ponownej próby. |
complaint@messagebird.dev lub spam@messagebird.dev | Skarga na spam. |
suppressed@messagebird.dev | Odmowa jako odbiorca już na liście wykluczeń, bez zdarzeń przetwarzania ani dostarczenia. |
reject@messagebird.dev | Odmowa przed próbą dostarczenia. |
Dopasowanie ignoruje wielkość liter. Usuwa +label przed wybraniem wyniku. Na przykład bounce+signup-flow@messagebird.dev nadal powoduje odrzucenie (bounce). Pełny adres pozostaje w zdarzeniach, dzięki czemu możesz je powiązać z danym testem.
Tylko udokumentowane nazwy w tej domenie są magiczne. bounce@yourdomain.com to normalny odbiorca, podobnie jak nierozpoznana nazwa w domenie messagebird.dev.
Symulowane odrzucenia i skargi nie dodają adresów do listy wykluczeń Bird ani nie wpływają na reputację nadawcy. Twoja aplikacja nadal otrzymuje ich zdarzenia, więc sprawdź, jak Twoja własna logika wykluczeń je obsługuje.
Testowanie dostarczania e-mail zawiera pełne sekwencje zdarzeń i reguły dopasowania.
Jakich numerów telefonów użyć?
Użyj +15005550006, aby przetestować udane dostarczenie SMS. Pozostałe poniższe numery testują ścieżki odmów i błędów.
| Adresat | Wynik |
|---|---|
+15005550001 | Odmowa przyjęcia z invalid_destination. |
+15005550002 | sms.sent, potem sms.undelivered z unreachable. |
+15005550003 | sms.sent, potem sms.failed z provider_unavailable. |
+15005550004 | sms.sent, potem sms.failed z blocked_by_carrier. |
+15005550006 | sms.sent, potem sms.delivered. |
+15005550009 | sms.sent, potem sms.failed z recipient_opted_out. |
Włącz Stany Zjednoczone w sekcji Destinations. Użyj nadawcy from ważnego dla USA. Nadawca alfanumeryczny jest tam odrzucany, więc nie może skutecznie przetestować tych numerów.
Wysyłka na +15005550006 pozwala przetestować handler sukcesu. Użyj +15005550002, aby sprawdzić osobną ścieżkę niedostarczenia. Przewodnik migracji SMS zawiera sekwencję smoke-testową.
Ile kosztuje testowanie i co zmienia?
Symulowane wysyłki zużywają rzeczywiste limity i mogą wpłynąć na Twoje statystyki.
SMS na magiczny numer jest rozliczany według normalnej stawki dla danego miejsca docelowego. Ogranicz powtarzane testy, bo każda symulowana wysyłka może wiązać się z opłatą.
Symulowany odbiorca e-mail jest wliczany do limitu wysyłki. Ruch sandbox e-mail trafia też do zagregowanych statystyk, w tym wskaźników odrzuceń (bounce) i skarg. Oddziel go w analizie, aby testowe błędy nie wyglądały jak problemy z dostarczaniem do klientów.
Jak zidentyfikować wynik testu?
Dopasuj zdarzenie do testowego odbiorcy lub identyfikatora wiadomości, który zapisałeś przy wysyłce.
Zaakceptowany symulowany e-mail zwraca 202 i normalne kształty zdarzeń. W ładunku nie ma flagi testowej. Sama akceptacja nie identyfikuje więc testu.
Użyj etykiety odbiorcy, np. bounce+signup-flow@messagebird.dev, aby powiązać zdarzenia e-mail z przebiegiem testu. Możesz też odczytać oś czasu lub zdarzenia wiadomości e-mail API bez uruchamiania odbiornika webhooków.
Sprawdzanie rzeczywistego dostarczenia przeprowadzaj osobno, gdy musisz zweryfikować renderowanie lub odbiór. Magiczni adresaci nie testują tych części ścieżki dostarczania.
W skrócie
Adresat wybiera wynik testu.
Użyj normalnego klucza i endpointów API. Rozpoznane adresy i numery uruchamiają symulowane wyniki dostarczania.
Ogranicz testy do znanych magicznych adresatów.
Żądanie może łączyć symulowanych i rzeczywistych odbiorców. Nierozpoznane adresy są traktowane jak normalni odbiorcy.
Testowanie zużywa rzeczywiste limity.
Symulowani odbiorcy e-mail zużywają limit wysyłki. Magiczne numery SMS są rozliczane według normalnej stawki dla danego miejsca docelowego.
Zapisuj, które wiadomości należą do testu.
Zdarzenia nie mają flagi testowej. Etykiety e-mail pozostają w adresach odbiorców, dzięki czemu możesz zidentyfikować przebieg testu w jego zdarzeniach.