Punti chiave
- Verifica che il cambio di paese aggiorni insieme etichette, requisiti e formati
- Separa input non elaborati, valori normalizzati e risultati del server
- Configura token di completamento automatico semantico ed etichette visibili localizzate
- Conserva l'input dopo un errore e sposta l'attenzione su un errore utile
Autore e revisione
Principi editoriali- Scritto da
- Team editoriale del generatore di indirizzi casuali
- Revisionato da
- Team di revisione moduli e QA
- Ultimo aggiornamento sostanziale
- Aggiunto cambio di paese, campi dinamici, token di completamento automatico e una matrice di test a più livelli.
Livello uno: stato di cambio paese
Selezionando un Paese è possibile rietichettare Città, cambiare Stato in Provincia o Prefettura, nascondere una regione e sostituire il suggerimento del codice postale. Dichiarare che l'interfaccia utente e API derivano dalla stessa configurazione del paese.
Non cancellare mai silenziosamente il testo inserito quando si cambia Paese. Conferma prima o conserva le bozze per paese, quindi blocca tale comportamento nei test di regressione.
| Paese | Etichette localizzate | Comportamento chiave |
|---|---|---|
| Stati Uniti | Stato/CAP | Stato di due lettere e CAP di cinque cifre |
| Canada | Provincia/Codice Postale | A1A 1A1 con spazio |
| Regno Unito | Post Town/Codice postale | contea normalmente facoltativa |
| Giappone | Prefettura/Codice postale | Codice a sette cifre e livelli multipli |
| Australia | Sobborgo/Stato/Codice postale | Codice postale di quattro cifre |
Livello due: HTML semantico e compilazione automatica
nome, etichetta e completamento automatico hanno lavori distinti. Le etichette spiegano il significato locale; il nome segue il contratto API; il completamento automatico utilizza token standardizzati come paese, address-line1, address-level1, address-level2 e postal-code.
Non combinare l'indirizzo con address-line1 e address-line2 per la stessa rappresentazione dell'indirizzo.
<input name="addressLine1" autocomplete="shipping address-line1" />
<input name="locality" autocomplete="shipping address-level2" />
<input name="region" autocomplete="shipping address-level1" />
<input name="postalCode" autocomplete="shipping postal-code" />Livello tre: convalida, normalizzazione e verifica
La convalida chiede se la forma dell'input è accettabile. La normalizzazione standardizza maiuscole/minuscole e separatori. La verifica viene confrontata con i dati di riferimento. Fornisci loro stati e messaggi separati.
Evitare di riscrivere ad ogni pressione di un tasto. Normalizza sulla sfocatura o invia e mostra la modifica risultante.
- Distinguere gli errori vuoti, troppo lunghi e con caratteri non validi
- Conservare rawValue prima della normalizzazione
- Non cancellare il modulo dopo un timeout di ricerca
- Non etichettare mai una corrispondenza regex come consegnabile
Livello quattro: ripristino degli errori e accessibilità
Dopo un errore, evidenzia un riepilogo degli errori o il primo campo non valido. Collega i messaggi con aria-describedby, non fare mai affidamento solo sul colore e conserva i valori degli altri campi.
Selezioni del paese per il test della tastiera, elenchi di suggerimenti, collegamenti di errore e focus post-invio. Individua i test automatizzati in base a etichette o ruoli anziché a segnaposto specifici per paese.
Livello cinque: verificare il payload reale dell’API
Cattura la richiesta inviata e afferma countryCode, regionCode, postalCode, rawAddress e normalizedAddress. Rileggere il record per rilevare errori di codifica e conversione null.
Un'asserzione solo UI può mancare una selezione di provincia che visualizza correttamente l'Ontario ma invia Ontario anziché ON. Può anche mancare una seconda riga cancellata che lascia in memoria il valore precedente. Esegui un record tramite creazione, modifica, riapertura ed esportazione in modo che il test dimostri un percorso di andata e ritorno completo anziché uno stato di schermata riuscito.
Esercita un comportamento di ricerca di terze parti con risposte lente, limitazione della velocità, errori del server, nessun suggerimento e diversi suggerimenti plausibili. Un errore di rete non deve essere formulato in quanto il tuo indirizzo è sbagliato. L'indisponibilità del sistema e l'input inaccettabile sono stati diversi con rimedi diversi.
Versione della configurazione del paese utilizzata dal test. Quando le regole postali o i requisiti del prodotto cambiano, un errore dovrebbe identificare se è cambiata l'applicazione o lo snapshot di riferimento.
- Snapshot della richiesta finale JSON
- Conferma che la cancellazione di un campo facoltativo rimuove il suo vecchio valore
- Simula timeout, 429, 500, nessun risultato e risultati multipli
- Copia separata degli errori di sistema dalla copia input-error
Domande frequenti
Ogni paese dovrebbe mostrare un campo Stato?
No. Rietichettalo Provincia, Prefettura o Regione dove appropriato e nascondilo dove il Paese non richiede quel livello.
Il completamento automatico può sostituire un'etichetta visibile?
No. Il completamento automatico serve il browser; le etichette sono al servizio delle persone e delle tecnologie assistive.
Una ricerca non riuscita può cancellare il modulo?
Non dovrebbe. Conserva l'input, identifica il campo e consenti all'utente di correggerlo sul posto.
