Puntos clave

  • Pruebe que el cambio de país actualice etiquetas, requisitos y formatos juntos
  • Separe la entrada sin procesar, los valores normalizados y los resultados del servidor
  • Configurar tokens de autocompletar semánticos y etiquetas visibles localizadas
  • Preservar la entrada después de un error y centrar la atención en un error útil

Autoría y revisión

Principios editoriales
Escrito por
Equipo editorial del generador de direcciones aleatorias
Revisado por
Equipo de revisión de formularios y control de calidad
Última actualización sustancial
Se agregó cambio de país, campos dinámicos, tokens de autocompletar y una matriz de prueba en capas.

Capa uno: estado de cambio de país

Al seleccionar un país, se puede volver a etiquetar Ciudad, cambiar Estado a Provincia o Prefectura, ocultar una región y reemplazar la pista del código postal. Afirme que la interfaz de usuario y API derivan de la misma configuración de país.

Nunca borre silenciosamente el texto ingresado al cambiar de país. Confirme primero o conserve los borradores por país, luego bloquee ese comportamiento en pruebas de regresión.

PaísEtiquetas localizadasComportamiento clave
Estados UnidosEstado / Código PostalEstado de dos letras y código postal de cinco dígitos
CanadáProvincia / Código PostalA1A 1A1 con espacio
Reino UnidoCiudad postal/código postalCondado normalmente opcional
JapónPrefectura / Código postalCódigo de siete dígitos y múltiples niveles.
AustraliaSuburbio / Estado / Código PostalCódigo postal de cuatro dígitos

Capa dos: HTML semántico y autocompletar

nombre, etiqueta y autocompletar tienen trabajos distintos. Las etiquetas explican el significado local; el nombre sigue al contrato API; La función de autocompletar utiliza tokens estandarizados como país, address-line1, address-level1, address-level2 y código postal.

No combine la dirección de la calle con address-line1 y address-line2 para la misma representación de dirección.

<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" />

Capa tres: validación, normalización y verificación

La validación pregunta si la forma de entrada es aceptable. La normalización estandariza casos y separadores. La verificación se compara con los datos de referencia. Dales estados y mensajes separados.

Evite reescribir en cada pulsación de tecla. Normalice el desenfoque o envíelo y muestre el cambio resultante.

  • Distinguir errores de caracteres vacíos, demasiado largos y no válidos
  • Conservar rawValue antes de la normalización
  • No borre el formulario después de un tiempo de espera de búsqueda
  • Nunca etiquetes una coincidencia de expresiones regulares como entregable

Capa cuatro: recuperación de errores y accesibilidad

Después del error, céntrese en un resumen de errores o en el primer campo no válido. Conecte mensajes con aria-describedby, nunca dependa únicamente del color y conserve otros valores de campo.

Selección de países de prueba de teclado, listas de sugerencias, enlaces de error y enfoque posterior al envío. Ubique pruebas automatizadas por etiquetas o roles en lugar de marcadores de posición específicos de cada país.

Capa cinco: validar la carga útil real de la API

Capture la solicitud enviada y afirme countryCode, regionCode, postalCode, rawAddress y normalizedAddress. Vuelva a leer el registro para detectar errores de codificación y conversión nula.

Una aserción de solo interfaz de usuario puede omitir una selección de provincia que muestra Ontario correctamente pero envía Ontario en lugar de ON. También puede omitir una segunda línea borrada que deja el valor anterior almacenado. Ejecute un registro mediante creación, edición, reapertura y exportación para que la prueba resulte un viaje completo de ida y vuelta en lugar de un estado de pantalla exitoso.

Ejerza el comportamiento de búsqueda de terceros con respuestas lentas, limitación de velocidad, errores del servidor, ninguna sugerencia y varias sugerencias plausibles. Una falla de red no debe redactarse como si su dirección fuera incorrecta. La indisponibilidad del sistema y la entrada inaceptable son estados diferentes con soluciones diferentes.

Versione la configuración del país utilizada por la prueba. Cuando cambian las reglas postales o los requisitos del producto, una falla debería identificar si la aplicación cambió o la instantánea de referencia cambió.

  • Instantánea de la solicitud final JSON
  • Confirmar que al borrar un campo opcional se elimina su valor anterior
  • Simular tiempo de espera, 429, 500, sin resultado y con múltiples resultados
  • Separe la copia de error del sistema de la copia input-error

Preguntas frecuentes

¿Todos los países deberían mostrar un campo estatal?

No. Vuelva a etiquetarlo como Provincia, Prefectura o Región cuando corresponda y ocúltelo donde el país no requiera ese nivel.

¿Puede el autocompletar reemplazar una etiqueta visible?

No. Autocompletar sirve al navegador; Las etiquetas sirven a las personas y a la tecnología de asistencia.

¿Puede una búsqueda fallida borrar el formulario?

No debería. Conserve la entrada, identifique el campo y permita que el usuario lo corrija en su lugar.

Fuentes y lecturas

  1. MDN: atributo de autocompletar HTML
  2. WHATWG: Dirección de nombres de campos de autocompletar