
Il-verżjoni mhux affidabbli ta' test tal-email hija qasira: oħloq indirizz, stenna ħames sekondi, aqra l-ewwel messaġġ, u tistenna li jappartjeni għal din it-tħaddija.
Il-verżjoni affidabbli għadha sempliċi, iżda ttratta t-twassil bħala asinkronu. Tħoloq indirizz uniku, tirreġistra ħin tal-bidu, tagħmel pollijiet ġewwa deadline, tqabbad il-messaġġ mixtieq, tivvalidaw l-azzjoni tal-prodott, u tirrapporta biżżejjed kontest meta xi ħaġa titfa.
Żomm il-key tal-API 'il bogħod mill-URL
Ibgħat il-key GPTMail fil-X-API-Key header. Taqbeżx tpoġġih fil-parametri tal-mistoqsija ?api_key=. URLs jiġu maħżuna regolarment fil-istorja tal-browser, loggs ta' aċċess, sistemi ta' monitoraġġ, u data ta' referer.
X-API-Key: YOUR_API_KEYĦażen il-key fil-maniġer tas-sigrieti CI tiegħek u maskih fil-loggs. Key pubbliku ta' kuljum huwa konvenjenti għall-esplorazzjoni; suites awtomatizzati kontrollati għandhom jużaw key li l-kwota u l-użu tiegħu jistgħu jiġu segwiti.
Il-punti ta' aċċess u eżempji ta' risposta kurrenti huma mantenuti fuq il-paġna tad-dokumentazzjoni GPTMail API.
Indirizz wieħed għal kull tħaddija
Ġenera indirizz ġdid għal kull test li jista' jitħaddem b'mod indipendenti. Taqbeżx tirriżulta l-korrettitudni minn kaxxa condivisa minn sutta tas-test kollha.
Irreġistra l-indirizz, ID tas-scenariu, l-ambjent, u ħin tal-bidu tat-test. Dawn il-valuri jħalluk tirrifjuta messaġġi antiki u tiddijana kollużjonijiet mingħajr ma tirreġistra sigrieti tal-messaġġ.
Agħmel poll kontra deadline, mhux stennija fissa
Ħin tat-twassil tal-email jvarja. Stennija fissa ta' ħames sekondi hija wasteful meta t-twassil huwa veloċi u mhux affidabbli meta jkun bil-mod.
Uża ċirku limitat:
deadline = now + 90 seconds
delay = 2 seconds
while now < deadline:
messages = list inbox
candidate = newest message matching sender, subject, and start time
if candidate exists:
read candidate and continue the product test
wait delay with a small random jitter
delay = min(delay * 1.5, 10 seconds)Il-deadline tappartjeni għall-kuntratt tat-test. Flus flow ta' reset tal-password jista' jeħtieġ limitu differenti minn preview ta' newsletter bulk. Żomm il-limit esplicit biex dipendenza bil-mod ma tespandix b'silenzju l-job kollha tal-CI.
Qabbad b'preċiżjoni
“L-ewwel messaġġ fil-kaxxa” mhuwiex selector utli. Qabbad diversi sinjali:
- ir-reċipjent huwa l-indirizz maħluq għal din it-tħaddija;
- ħin ta' ħolqien huwa aktar tard minn ħin it-trigger;
- il-mittent jappartjeni għas-servizz mistħajru;
- is-suġġett jew it-tip tal-messaġġ jaqblu mal-flus;
- l-ID tal-messaġġ għadu ma ġiex imħassar.
Meta l-mittent jista' joħroġ diversi kodiċi, agħżel l-iktar messaġġ ġdid li jaqbel. Żomm l-ID tiegħu fil-output tat-test biex ir-retries ma jużawx ħażin.
Aqra biss wara li tħares lista ta' tqabbir
Il-lista tal-kaxxa għandha tkun il-pass ta' skoperta ftit kostjuż. Iġbor il-messaġġ sħiħ biss għall-kandidatur magħżul. Dan inaqqas xogħol mhux meħtieġ u jevita l-parsejar ta' posta promozzjonali mhux relatata.
Ivvalidaw ir-riżultat tan-negozju, mhux biss il-preżenza ta' stringa ta' sitta ċifri. Issottometti l-kodiċi jew iftaħ il-link mistħajru, imbagħad ikkonferma li l-kont jilħaq l-istat korrett.
Immaniġġja l-limit ta' rata bħala sinjal
Jekk l-API jirritorna risposta ta' quota jew limit tar-rata, waqqaf l-attemp current u uri l-informazzjoni ta' reset. Retries aggressivi jibdlu sinjal ċar ta' kapaċità f'ħoss u jistgħu jikkawżaw dewmien ta' testijiet mhux relatati.
Ilimita l-konkurrenza fil-runner tat-test, speċjalment meta suite joħloq ħafna indirizzi f'waqt wieħed. Pool ta' workers żgħir huwa aktar faċli biex jiġi debuggjat minn għoxrin ta' loops ta' poll simultanji.
Ħassar mingħajr ma tħabi l-fallimenti
Il-cleanup għandu jinfirex wara li l-prova tkun ikkaptata. Fil-suċċess, neħħi l-messaġġi jew ħalli retention qasira tħaddemhom. Fil-falliment, żomm l-indirizz u l-ID tal-messaġġ f'artifatti CI protetti għal żmien adegwat għall-investigazzjoni, imbagħad ħassarhom.
Qatt ma tipprintja kodiċi ta' verifika, links privati, jew korpi HTML sħiħ fil-loggs tal-build pubbliċi.
Agħmel retries idempotenti
Erġa' eżegwixxi t-test bħala tħaddija ġdida b'indirizz ġdid. Taqbeżx li tirrepeti l-istess talba kontra l-istess kont u kaxxa jibda minn stat nadif. Il-mittent jista' jinvalidaw kodiċi antiki, japplica throttling fuq talbiet ripetuti, jew jirrifjuta invitajiet duplikati.
Jekk talba tan-netwerk tħalli timeout, iddistinga bejn “ma rċevejtx risposta” u “operazzjoni ma sarx”. Iċċekkja l-istat osservabbli qabel ma tagħmel retry destruttiv.
Irrapporta l-punt tal-falliment
Falliment ta' automazzjoni utli jidentifika wieħed minn dawn il-passi:
- Ġenerazzjoni tal-indirizz falliet;
- Azzjoni tal-prodott falliet qabel l-email tiġi mqabbla;
- Messaġġ li jaqbel ma wasal qabel il-deadline;
- Messaġġ wasal imma l-kontenut ma jaqbilx;
- Azzjoni ta' verifika falliet;
- Ħassar falliet.
Din il-klassifikazzjoni tikkonverti “test tal-email falliet” intermitenti f'ħidma li t-tim jista' jħaddem.
Għal il-matriċi ta' test kbir, aqra Pjan ta' Test Email Veru. Għal dijanjostik tat-twassil, uża Email ta' Verifika Ma Jisħax: Sib il-Pass Mksur.