Kernaussagen
- Testen Sie, ob beim Länderwechsel Etiketten, Anforderungen und Formate gemeinsam aktualisiert werden
- Trennen Sie Roheingaben, normalisierte Werte und Serverergebnisse
- Konfigurieren Sie semantische Autovervollständigungs-Tokens und lokalisierte sichtbare Beschriftungen
- Behalten Sie die Eingabe nach einem Fehler bei und verschieben Sie den Fokus auf einen nützlichen Fehler
Autorenschaft und Prüfung
Redaktionsgrundsätze- Verfasst von
- Redaktionsteam des Zufallsadressengenerators
- Geprüft von
- Formular- und QA-Überprüfungsteam
- Letzte wesentliche Aktualisierung
- Länderumschaltung, dynamische Felder, Token zur automatischen Vervollständigung und eine mehrschichtige Testmatrix hinzugefügt.
Schicht eins: Länderwechselstatus
Wenn Sie ein Land auswählen, können Sie die Stadt umbenennen, das Bundesland in Provinz oder Präfektur ändern, eine Region ausblenden und den Hinweis auf die Postleitzahl ersetzen. Stellen Sie sicher, dass die Benutzeroberfläche und API von derselben Länderkonfiguration abgeleitet sind.
Löschen Sie bei einem Länderwechsel niemals stillschweigend eingegebenen Text. Bestätigen Sie zuerst oder behalten Sie länderspezifische Entwürfe bei und sperren Sie dieses Verhalten dann in Regressionstests.
| Land | Lokalisierte Etiketten | Schlüsselverhalten |
|---|---|---|
| Vereinigte Staaten | Bundesland/Postleitzahl | Zweibuchstabiger Bundesstaat und fünfstellige Postleitzahl |
| Kanada | Provinz/Postleitzahl | A1A 1A1 mit Platz |
| Vereinigtes Königreich | Postort/Postleitzahl | County ist normalerweise optional |
| Japan | Präfektur / Postleitzahl | Siebenstelliger Code und mehrere Ebenen |
| Australien | Vorort/Bundesland/Postleitzahl | Vierstellige Postleitzahl |
Schicht zwei: semantisches HTML und automatisches Ausfüllen
Name, Bezeichnung und Autovervollständigung haben unterschiedliche Aufgaben. Etiketten erklären die lokale Bedeutung; Name folgt dem API-Vertrag; Autocomplete verwendet standardisierte Token wie Land, address-line1, address-level1, address-level2 und postal-code.
Kombinieren Sie street-address nicht mit address-line1 und address-line2 für dieselbe Adressdarstellung.
<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" />Schicht drei: Validierung, Normalisierung und Verifizierung
Bei der Validierung wird gefragt, ob die Eingabeform akzeptabel ist. Durch die Normalisierung werden Groß- und Kleinschreibung und Trennzeichen standardisiert. Die Verifizierung vergleicht mit Referenzdaten. Geben Sie ihnen separate Zustände und Nachrichten.
Vermeiden Sie es, bei jedem Tastendruck neu zu schreiben. Bei Unschärfe normalisieren oder senden und die resultierende Änderung anzeigen.
- Unterscheiden Sie zwischen leeren, zu langen und ungültigen Zeichenfehlern
- Behalten Sie rawValue vor der Normalisierung bei
- Löschen Sie das Formular nicht nach einem Zeitlimit für die Suche
- Kennzeichnen Sie eine Regex-Übereinstimmung niemals als lieferbar
Schicht vier: Fehlerbeseitigung und Zugänglichkeit
Konzentrieren Sie sich nach einem Fehler auf eine Fehlerzusammenfassung oder auf das erste ungültige Feld. Verbinden Sie Nachrichten mit aria-describedby, verlassen Sie sich nie nur auf die Farbe und behalten Sie andere Feldwerte bei.
Länderauswahl für Tastaturtests, Vorschlagslisten, Fehlerlinks und Fokus nach der Übermittlung. Suchen Sie automatisierte Tests nach Labels oder Rollen statt nach länderspezifischen Platzhaltern.
Schicht fünf: Bestätigen Sie die echte API-Nutzlast
Erfassen Sie die übermittelte Anfrage und bestätigen Sie countryCode, regionCode, postalCode, rawAddress und normalizedAddress. Lesen Sie den Datensatz zurück, um Codierungs- und Nullkonvertierungsfehler zu erkennen.
Bei einer reinen UI-Behauptung kann eine Provinzauswahl fehlen, die Ontario korrekt anzeigt, aber Ontario anstelle von ON übergibt. Es kann auch eine gelöschte zweite Zeile fehlen, die den vorherigen Wert im Speicher belässt. Führen Sie einen Datensatz durch, um ihn zu erstellen, zu bearbeiten, erneut zu öffnen und zu exportieren, sodass der Test einen vollständigen Roundtrip und nicht nur einen erfolgreichen Bildschirmstatus nachweist.
Üben Sie das Suchverhalten von Drittanbietern mit langsamen Antworten, Ratenbegrenzung, Serverfehlern, keinen Vorschlägen und mehreren plausiblen Vorschlägen aus. Ein Netzwerkfehler darf nicht so formuliert werden, dass Ihre Adresse falsch ist. Systemunverfügbarkeit und inakzeptable Eingabe sind unterschiedliche Zustände mit unterschiedlichen Abhilfemaßnahmen.
Version der vom Test verwendeten Länderkonfiguration. Wenn sich Postregeln oder Produktanforderungen ändern, sollte ein Fehler erkennen lassen, ob sich die Anwendung oder der Referenz-Snapshot geändert hat.
- Snapshot der letzten Anfrage JSON
- Bestätigen Sie, dass durch das Löschen eines optionalen Felds dessen alter Wert entfernt wird
- Simulieren Sie Timeout, 429, 500, kein Ergebnis und mehrere Ergebnisse
- Trennen Sie die Systemfehlerkopie von der input-error-Kopie
Häufige Fragen
Sollte jedes Land ein Bundesland-Feld anzeigen?
Nein. Benennen Sie es ggf. in „Provinz“, „Präfektur“ oder „Region“ um und verstecken Sie es dort, wo das Land diese Ebene nicht erfordert.
Kann die automatische Vervollständigung ein sichtbares Etikett ersetzen?
Nein. Autocomplete dient dem Browser; Etiketten dienen Menschen und unterstützender Technologie.
Kann eine fehlgeschlagene Suche das Formular löschen?
Das sollte nicht der Fall sein. Behalten Sie Eingaben bei, identifizieren Sie das Feld und lassen Sie den Benutzer es direkt korrigieren.
