Sobes.tech
Middle

Como é realizado o teste de internacionalização?

sobes.tech IA

Resposta da IA

Para testar a internacionalização (i18n) e a localização (l10n), verifica-se a correção na visualização e funcionamento da aplicação para diferentes idiomas, culturas e regiões.

Etapas principais:

  1. Teste de internacionalização (Teste de i18n): Foca na arquitetura e design da aplicação para garantir que ela possa trabalhar com diferentes idiomas e formatos culturais sem alterar o código.

    • Teste de localização simulada: Substituir todas as cadeias de texto por caracteres especiais ou versões estendidas para verificar se a aplicação lida corretamente com diferentes comprimentos de cadeias e caracteres, além de detectar cadeias codificadas de forma rígida.
    • Teste do manuseio de dados ligados à cultura: Verificar a exibição e processamento corretos de:
      • Formatos numéricos e separadores decimais.
      • Formatos de data e hora.
      • Símbolos e formatos monetários.
      • Unidades de medida.
      • Ordem de classificação.
    • Teste de escalabilidade do texto: Garantir que a interface do utilizador seja exibida corretamente ao aumentar significativamente o comprimento das cadeias de texto.
    • Teste de suporte de codificações: Verificar o funcionamento correto com diferentes codificações de caracteres (por exemplo, UTF-8).
  2. Teste de localização (l10n Testing): Foca na verificação de versões localizadas específicas da aplicação para certos idiomas e regiões.

    • Teste do texto traduzido: Verificar a correção e adequação da tradução, sem erros gramaticais ou erros tipográficos.
    • Teste de exibição do conteúdo localizado: Garantir que todos os elementos da interface do utilizador (texto, imagens, ícones) sejam exibidos corretamente considerando as particularidades locais.
    • Teste de funcionalidade em ambiente localizado: Verificar que toda a funcionalidade da aplicação funcione corretamente com dados localizados.
    • Teste de formatação específica da localidade: Confirmar a exibição correta de formatos de data/hora, números, moeda e outros dados de acordo com os padrões locais.
    • Teste de adequação cultural: Avaliar o quão bem o conteúdo e a interface do utilizador atendem às normas culturais e às expectativas do público-alvo.

Ferramentas e métodos de automação podem ser usados para:

  • Verificar a presença de todas as chaves de localização necessárias.
  • Detectar cadeias codificadas de forma rígida.
  • Verificar o formatação básica de dados ligados à cultura.
  • Automatizar testes de interface de utilizador em ambientes localizados usando frameworks como Selenium ou Appium.
# Exemplo de verificação da presença de chaves de localização em um arquivo
import json

def check_localization_keys(default_lang_file, lang_file):
    with open(default_lang_file, 'r', encoding='utf-8') as f_default:
        default_keys = set(json.load(f_default).keys())

    with open(lang_file, 'r', encoding='utf-8') as f_lang:
        lang_keys = set(json.load(f_lang).keys())

    missing_keys = default_keys - lang_keys
    if missing_keys:
        print(f"Chaves ausentes em {lang_file}: {missing_keys}")
    
    extra_keys = lang_keys - default_keys
    if extra_keys:
        print(f"Chaves extras em {lang_file}: {extra_keys}")

# Chamada da função para comparar chaves do arquivo padrão e de outro idioma
# check_localization_keys('en.json', 'ru.json')