localization_imageEn toda aplicación multilenguaje se debería dedicar parte del esfuerzo del testing a los tests de localización. En estos tests se verifican varios componentes, esto hace que la localización se suela dividir en dos partes: la internacionalización (i18n) y la localización (l10n).

La internacionalización hace referencia a los aspectos de lenguaje e interfaz de usuario de nuestra aplicación. Se ha de verificar que no haya componentes hard-coded, o elementos específicos de una región. Normalmente revisaremos todo lo referente a componentes de lenguaje como la gramática, alfabetos o uso de mayúsculas, así como lo referente la user interface, como los mensajes, menús, iconos, imágenes, shortcuts y controles.

Es habitual revisar los componentes de lenguaje mediante un archivo de recursos que contiene todas las strings traducidas en los distintos lenguajes, aunque siempre será necesario hacer un testing en la aplicación real, para poder verificar que no se producen solapamientos de texto ni efectos gráficos no deseados.

Por otra parte, la localización, hace referencia a la verificación de los elementos que tienen un formato que depende de la región, por ejemplo: formatos de fecha, direcciones, unidades de medida o números de teléfono, donde cada país tiene su formato específico.

Son varios los trucos que cada uno emplea para testear la localización de un producto, prácticas como hacer builds especiales con caracteres de más en cada prefijo y sufijo del control son habituales, aunque la práctica más extendida suele ser la verificación “visual”, normalmente acompañada de un traductor nativo, para las correcciones gramaticales y propias del lenguaje.