Para garantir que a aplicação seja testada e esteja em conformidade com a localidade e lingua da pessoa, existe um Tipo de Teste chamado Internationalization Testing ou Teste de Internacionalização.
Internationalization Testing (Teste de Internacionalização)
Este tipo de teste tem o intuito de validar o comportamento do sistema utilizado em outras linguas. Ele é desenvolvido no momento de design e codificação da aplicação.
A tradução do sistema pode ser feita de várias formas e em vários pontos como labels, mensagens, hints, help etc... O comum é ter nas aplicações um arquivo de configuração onde a propriedade para uma mensagem é a mesma, mudando quando a lingua utilizada pelo usuário é alterada e tendo um arquivo de configuração para cada lingua da aplicação.
Isso faz com que não tenhamos alteração no código fonte da aplicação, somento nos arquivos de configuração.
Nos teste de Internacionalização garantimos que as funcionalidades do produto estejam funcionando perfeitamente com a alteração da lingua da aplicação e que os textos estejam sendo apresentados corretamente e traduzidos corretamente. Esse Tipo de Teste também pode ser chamado de I18N Testing.
Exemplo de um aplicativo com Internacionalização
Para poder ilustrar brevemente um aplicativo que possui Internacionalização olharemos para a aplicaçãozinha abaixo.
O que ela faz é receber um nome num inputbox e exibir uma mensagem com o texto inserido, coisa simples. Segue imagem do "sistema" desenvolvido em Java:
clique na imagem para ampliar
Para Internacionalizar a aplicação o desenvolvedor cria, em Java, um arquivo que vai conter todos os textos da aplicação, removendo-os do código-fonte.
clique na imagem para ampliar
Na imagem acima é apresentado os arquivo de configuração de lingua, um em inglês e outro em portugues. Se vocês apliarem a imagem verão que existem propriedades como "label.information" nos dois arquivos, trocando apenas o seu valor.
Na aplicação são inseridos os códigos necessários para que a aplicação passe a ler o conteudo do arquivo de linguagem (ingles, portugues, etc..) da máquina. A imagem abaixo mostra um exemplo:
clique na imagem para ampliar
O novo código inserido serve para carregar o arquivo de configuração para que o código-fonte possa utiliza-lo e o código para carregar o valor da propriedade para cada tipo de componente. No exemplo acima na primeira linha estamos carregando o arquivo e na segunda colocando o valor de "label.name" no label de nome da aplicação.
Quando o sistema operacional do usuario do sistema estiver um ingles, o sistema é automaticamente traduzido. Isso também pode ser feito colocando parâmetros na aplicação.
clique na imagem para ampliar
Bom, espero que tenham gostado do post e do exemplo. Quaquer dúvida não deixe de colocar um comentário!
Abraços!
Agregando mais informações..:
ResponderExcluir- Num teste de sistema, os textos seriam verificados página a página ou seriam validados através do arquivo properties?
Pode ser feito em ambos, mas o recomendado é efetuar página a página, pois o erro de tradução pode trazer um efeito colateral para a mesma. O texto traduzido corretamente também poderá causar algum efeito coletarel, o que acaba deixando a verificação na página um teste mais abrangente.
ResponderExcluir