what is localization testing
onde posso encontrar minha chave de segurança de rede
Aprenda o que é teste de localização e teste de internacionalização:
É muito comum encontrar sites que agora estão disponíveis em vários idiomas. As marcas globais já reconheceram que a única maneira de se conectar e criar valor é apresentando seus negócios aos habitantes locais em um idioma que seja verdadeiramente local.
Esse processo de adaptação de um produto a um idioma, região e local diferente é chamado de localização. Um produto localizado cria mais oportunidades de negócios e oferece crescimento e expansão.
No entanto, muitas organizações cometem o erro de adaptar a localização no final do processo de desenvolvimento ou pouco antes do lançamento do produto.
Para localizar um produto, é muito importante saber se ele está internacionalizado.
Confuso? Um design de produto / aplicativo internacionalizado é aquele que pode acomodar conteúdo localizado, como caracteres em letras não ocidentais, idiomas de byte duplo, capacidade de expansão do texto como em idiomas europeus e contração como em idiomas asiáticos, exibir caracteres Unicode e ter um banco de dados que suporta caracteres Unicode etc.
Discutiremos localização e internacionalização em detalhes aqui.
O que você aprenderá:
- O que é teste de localização?
- O que é internacionalização?
- Escopo do teste
- Práticas recomendadas de teste para internacionalização de teste
- A automação é possível?
- Conclusão
- Leitura recomendada
O que é teste de localização?
Localização é definido como tornar um produto, aplicativo ou conteúdo de documento adaptável para atender aos requisitos culturais, linguais e outros de uma região ou local específico.
A localização é abreviada como l10n, onde 10 é o número de letras entre le n. Quando se pensa em localização, o que vem à mente é que a interface do usuário e a documentação de um aplicativo estão em um idioma ou local específico. Mas a localização é mais do que apenas isso.
Ao localizar um aplicativo, as seguintes áreas importantes devem ser personalizadas:
- Formatos de data e hora (incluindo formatos numéricos)
- Moeda usada
- Uso do teclado
- Classificando, alinhando e agrupando dados
- Esquemas de cores, símbolos e ícones
- Texto e gráficos que, em uma determinada cultura, podem ser considerados confidenciais ou podem ser mal interpretados.
- Diversos requisitos legais
O principal objetivo da localização é fazer com que o produto tenha uma aparência e toque que, para o público-alvo, pareça que foi criado especialmente para atender às suas necessidades.
Ferramenta Recomendada:
# 1) Digivante
O teste de localização completo da Digivante cobre verificações linguísticas, técnicas e visuais especializadas, usando sua comunidade de testes profissionais de testadores confiáveis que correspondem ao seu público-alvo global.
Distribuída por 149 países, a solução de localização da Digivante oferece o conhecimento local de que você precisa para ser verdadeiramente global. Contate-os para mais informações.
A localização e a internacionalização são, juntas, chamadas de globalização. A globalização está em um nível mais amplo. A internacionalização está tornando o aplicativo compatível com vários idiomas / localidades. Localização é fazer com que um aplicativo suporte uma localidade e idioma específicos.
A figura a seguir ajudará você a entender como a localização e a internacionalização juntas tornam um aplicativo de software globalizado.
O que é internacionalização?
Internacionalização é o processo de projetar e desenvolver um produto, aplicativo ou conteúdo de documento de forma que permita a localização para qualquer cultura, região ou idioma.
Internacionalização também é escrita i18n, onde 18 é o número de letras entre mim e n na palavra internacionalização.
A internacionalização normalmente envolve:
- Desenhar e desenvolver a aplicação de forma a simplificar a implantação, localização e internacionalização da aplicação. Isso inclui cuidar da renderização adequada de caracteres em vários idiomas, concatenação de strings, etc., que pode ser feito usando Unicode durante o desenvolvimento
- Cuidando do quadro geral durante o desenvolvimento do aplicativo para oferecer suporte a texto bidirecional ou para identificar idiomas, precisamos adicionar marcação em nosso DTD. Além disso, usamos CSS para oferecer suporte a texto vertical ou outros recursos tipográficos não latinos.
- O código deve ser capaz de suportar o idioma local e regional e também outras preferências culturais. Isso envolve o uso de dados de localização predefinidos e recursos de bibliotecas existentes. Formatos de data e hora, feriados do calendário local, formatos numéricos, apresentação de dados, classificação, alinhamento de dados, formato de exibição de nome e endereço, etc.
- Tornar os elementos localizáveis separados do código-fonte para que o código seja independente. E então, de acordo com a necessidade do usuário, o conteúdo localizado pode ser carregado com base em suas preferências.
A internacionalização consiste basicamente no design e desenvolvimento de um aplicativo para torná-lo pronto para a localização. Não é necessário que haja tradução relacionada ao idioma, cultura e região. É para preparar um aplicativo para migração em um estágio posterior, se a localização ocorrer.
O diagrama a seguir ajudará a explicar o diferença entre nacionalização e internacionalização.
(Clique na imagem para ampliá-la)
(imagem fonte )
Vamos resumir o diferença entre localização e internacionalização na tabela abaixo:
Teste de localização | Teste de Internacionalização |
---|---|
1. A localização é definida como tornar um produto, aplicativo ou conteúdo de documento adaptável para atender aos requisitos culturais, linguais e outros de uma região ou local específico. | 1. Internacionalização é o processo de projetar e desenvolver um produto, aplicativo ou conteúdo de documento de forma que permita a localização. |
2. A localização é referida como l10n | 2. A internacionalização é referida como i18n |
3. A localização se concentra na ajuda online, contexto da GUI, caixas de diálogo, mensagens de erro, leia-me / tutoriais, manuais do usuário, notas de versão, guia de instalação, etc. | 3. A internacionalização se concentra no teste de compatibilidade, teste de funcionalidade, teste de interoperabilidade, teste de usabilidade, teste de instalação, teste de validação de interface de usuário. |
4. A localização em si significa um idioma local específico para qualquer região | 4. O código do aplicativo é independente do idioma |
5. A localização não está no nível da interface do usuário | 5. A internacionalização está no nível de design |
Escopo do teste
Os principais pontos focais a serem considerados para os testes de localização e internacionalização são os seguintes:
1) Língua
- Texto Unicode para atender à codificação de caracteres
- Sistemas numéricos
- Instruções de escrita
- Variantes de ortografia
- Regras de capitalização e classificação
- Atalhos e layouts de teclado
2) Cultura e região
- Nomes e títulos
- Números do governo (número do Seguro Social é os EUA) e passaportes
- Cores e imagens
- Números de telefone, códigos postais, formatos de endereço
- Tamanhos de papel
- Pesos e medidas
- Símbolo da moeda e posição do mercado monetário
3) Datas e eventos importantes
- Formatos de data e hora
- Tipos de calendário (gregoriano, lunar etc.)
- Formatos de número (separadores decimais, agrupamento de dígitos etc.)
Práticas recomendadas de teste para internacionalização de teste
Várias áreas são afetadas quando um aplicativo é internacionalizado. A fim de garantir a completa cobertura de teste , precisamos concentrar nossos testes em seguir aspectos importantes.
# 1) Localização de conteúdo
O conteúdo localizado inclui gráficos e também texto. Conteúdo estático e dinâmico exibido na interface. Conteúdos estáticos como guias, botões, rótulos e nomenclaturas de elementos da web, mensagem de boas-vindas, texto de ajuda, dica de ferramenta etc.
Conteúdos dinâmicos, como a mensagem exibida quando um formulário é preenchido, mensagem de validação em caso de erros ou campo obrigatório, não preenchem outras mensagens específicas do usuário, etc. Este tipo de teste de idioma é feito por especialistas em idioma ou é verificado em arquivo de propriedades específicas do idioma enviado pelo cliente que contém mapeamentos de significado de palavras em inglês para outro idioma.
# 2) Baseado em recursos
Dependendo da região, alguns recursos estão disponíveis e outros não. Os testadores precisam garantir que o recurso esteja oculto para a região à qual não se aplica e deve ser exibido e funcional para os usuários regionais aos quais é aplicável.
# 3) Conhecimento da localidade / cultura
A consciência local / cultural inclui a compreensão da diferença entre datas e a formatação de números usada em várias regiões. Isso inclui diferenças de calendário, feriados e festivais, formatação de data, formatação de hora, moeda, formatação de número, endereço, números de telefone, códigos postais ou nenhum código postal, unidades de medidas etc.
Como estamos lidando com diferentes dados de local, a conversão de um formato de codificação para outro deve acontecer. Um bom entendimento de formatos de codificação e conversão de e para um formato é crucial, pois também pode resultar em perda de dados.
# 4) Interface do usuário
A interface do usuário deve ser testada quanto à adaptabilidade a todos os conteúdos de idioma. Deve mudar de acordo para acomodar texto com comprimentos maiores sem distorcer o alinhamento.
Alguns textos específicos de idioma ocupam mais espaço do que outros, portanto, a interface deve ser capaz de se adaptar a essa mudança sem ficar distorcida. Por exemplo, o texto em alemão ocupa mais espaço para transmitir as mesmas informações em comparação com o inglês. Portanto, uma interface deve ser adaptável.
se o tráfego para um site for leve, qual abordagem de teste funcionará melhor
Precisamos testar a interface do usuário de um aplicativo para garantir que não contenha defeitos como strings truncadas, controles sobrepostos ou desalinhados, teclas de atalho duplicadas, etc. Além disso, tudo precisa ser traduzido no respectivo idioma.
Isso inclui o seguinte:
- Menus na barra de menu
- Mensagem de alerta, alerta e aviso
- Caixas de diálogo (títulos, botões e mensagens de ajuda)
- Imagens
- Barras de ferramentas (dica para ferramentas na barra de ferramentas)
- Informações de status na barra de status
# 5) Renderização
É importante verificar se todos os scripts suportados são exibidos corretamente de acordo com os caracteres específicos do idioma associados a eles. Ao visualizar uma página em um idioma específico, os scripts devem ser executados corretamente, ou seja, nenhum erro de script deve ser exibido, todos os caracteres devem ser exibidos no idioma específico.
Várias características de renderização de personagem incluem bidirecional, moldar conforme o contexto, reordenar e combinar personagens. Outros incluem quebra de palavra, quebra de linha, formatação como uma justificação ou alinhamento à esquerda / direita, etc.
# 6) Transferência de arquivo
Se o aplicativo incluir uma operação de transferência de arquivos, precisamos testar se uma interface de transferência de arquivos está localizada de acordo com o idioma selecionado. O arquivo está sendo transferido com sucesso ou não e o arquivo transferido não está corrompido.
É importante especificar o formato de codificação ao ler um arquivo que contém caracteres Unicode. A codificação padrão é UTF-8 quando nada é especificado. Os arquivos de texto salvos no formato de codificação UTF-16 quando lidos usando UTF -8 exibirão texto ininteligível. Portanto, a codificação desempenha um papel muito importante nas transferências de arquivos.
# 7) Banco de dados
Teste de banco de dados para aplicação internacionalizada consistirá no suporte de caracteres Unicode no banco de dados. Tipos de dados especiais estão disponíveis para este propósito. Tipos de dados como nchar, nvarchar e ntext são definidos pelo servidor SQL que ajuda a armazenar caracteres Unicode.
Então prefix significa tipos de dados National Unicode. Esses n tipos de dados prefixados são usados da mesma maneira que os tipos de dados char, varchar e text originais. A única diferença é que o tipo de dados de prefixo n também suporta o seguinte:
- É necessário mais espaço em disco
- Mais personagens são suportados
- O tamanho máximo de nchar e nvarchar é 4000, mas para char e varchar é 8000
Trabalhar com tipos de dados de prefixo N é igual ao normal. Deve-se tomar cuidado durante a migração do banco de dados. Os tipos de dados adequados devem ser mapeados para migração ou os dados serão perdidos.
Benefícios do teste de internacionalização
- Visibilidade internacional do produto
- Aumento da qualidade do produto, se construído para apoiar a internacionalização
- Alcance um público maior em todo o mundo
- Produto lançado globalmente com despesas relativamente menores
A automação é possível?
Testar um aplicativo internacionalizado é sempre um desafio para a organização. Cada idioma que o aplicativo suporta, pode multiplicar o número de casos de teste necessários para o teste. Se a organização usa automação extensivamente, os scripts de automação podem ser construídos e mantidos para um produto com escopo e tipo tão grandes?
O que é realmente necessário para resolver esse problema é criar scripts de teste que possam ser facilmente estendidos para oferecer suporte a vários idiomas.
Conforme discutido acima, se o aplicativo for construído usando as práticas de I18N e L10N para criar uma versão de núcleo não sensível ao idioma, em que o arquivo de propriedades, é usado para atender aos requisitos de idioma. O aplicativo lê o respectivo arquivo de propriedades em tempo de execução para renderizá-lo no idioma selecionado. Dessa forma, a versão básica de um aplicativo é apenas uma, que tem a capacidade de alterar o idioma da interface do usuário quando necessário.
Isso possibilitou automatizar a aplicação internacionalizada, pois os scripts de teste são escritos apenas para a versão base e facilmente executados para todas as linguagens.
Antes de iniciar a automação, precisamos confirmar se os nomes ou IDs atribuídos a todos os elementos nas janelas não mudam com a mudança no idioma. Todos os objetos na página da web, como campos de texto, botões de rádio, listas suspensas, caixas de seleção, hiperlinks, pop-ups, caixas de listagem, etc. devem ter um id único (como nome ou ID) deve ser independente do idioma.
Se tivermos certeza de que todos os elementos da web não são específicos de um idioma, podemos criar um script de automação extremamente eficiente para uma aplicação internacionalizada.
Esse link irá ajudá-lo a entender como automatizar o aplicativo internacionalizado usando a ferramenta de código aberto mais popular, por exemplo, selenium web-driver.
Ferramentas de teste de localização:
É difícil realizar testes de localização usando apenas qualquer ferramenta de automação. Existem algumas ferramentas que podem automatizar muito bem algumas das tarefas. Aqui está a lista:
- Automatize a localização da IU usando IBM Rational Functional Tester
- Berinjela
- Ferramenta de localização de aplicativos .NET http://www.redpin.eu
- Applitools
Casos de teste
Por favor, consulte esse link para saber mais sobre os casos de teste aplicáveis aos testes de localização e internacionalização.
Conclusão
Testar a localização e internalização é um desafio e um entendimento completo de seus conceitos de desenvolvimento é importante para testá-lo de forma eficiente.
Além disso, escrever e manter scripts de teste de automação para software internacionalizado não é entediante, pois o script escrito para automatizar o teste da versão base do aplicativo pode ser usado para testar qualquer idioma compatível.
Escreva para nós abaixo para nos contar seus comentários, perguntas e experiências com testes de localização / globalização / internacionalização.
Leitura recomendada
- Melhores ferramentas de teste de software 2021 (QA Test Automation Tools)
- Teste Alfa e Teste Beta (um guia completo)
- Download do e-book do Testing Primer
- Teste Funcional Vs Teste Não Funcional
- Guia completo de teste de verificação de compilação (teste BVT)
- O que é teste de globalização (um guia completo)
- Guia de teste de segurança de aplicativos da Web
- Tipos de teste de software: diferentes tipos de teste com detalhes