Faça sua pergunta e obtenha um resumo do documento referenciando esta página e o provedor AI de sua escolha
Histórico de versões
- "Esclarecer que o content test termina com código não zero quando faltam idiomas obrigatórios"v6.1.027/10/2026
- "Introdução dos testes"v6.0.020/09/2025
O conteúdo desta página foi traduzido com uma IA.
Veja a última versão do conteúdo original em inglêsSe você tiver uma ideia para melhorar esta documentação, sinta-se à vontade para contribuir enviando uma pull request no GitHub.
Link do GitHub para a documentaçãoCopiar o Markdown do documento para a área de transferência
Testando seu conteúdo
Este guia mostra como verificar automaticamente se seus dicionários estão completos, detectar traduções faltantes antes do lançamento e testar a interface localizada em seu aplicativo.
O que você pode testar
- Traduções faltantes: falhar no CI se algum idioma obrigatório estiver faltando em qualquer dicionário.
- Renderização da interface localizada: renderizar componentes com um provedor de idioma específico e verificar textos/atributos visíveis.
- Auditorias em tempo de build: executar
npx intlayer content testlocalmente ou no CI; ele termina com um código não zero quando faltam traduções obrigatórias.
Início rápido: auditoria via CLI
Execute a auditoria a partir da raiz do seu projeto:
Copiar o código para a área de transferência
Flags úteis:
--env-file [caminho]: carrega variáveis de ambiente a partir de um arquivo.-e, --env [nome]: seleciona um perfil de ambiente.--base-dir [caminho]: define o diretório base do app para resolução.--verbose: exibe logs detalhados.--prefix [rótulo]: prefixa as linhas de log.
O comando termina com o código 1 quando falta qualquer idioma obrigatório (veja requiredLocales na sua configuração) e com 0 caso contrário. Você pode usá-lo diretamente para falhar jobs de CI ou hooks de commit. O teste programático abaixo é uma alternativa opcional.
Teste programático (Vitest/Jest)
Use a API do CLI do Intlayer para garantir que não há traduções faltando para os locais obrigatórios.
Copiar o código para a área de transferência
Equivalente em Jest:
Copiar o código para a área de transferência
Como funciona:
- O Intlayer lê sua configuração (locales, requiredLocales) e os dicionários declarados, então reporta:
missingTranslations: por chave, quais locais estão faltando e de qual arquivo.missingLocales: união de todos os locais faltantes.missingRequiredLocales: subconjunto limitado arequiredLocales(ou todos os locais serequiredLocalesnão estiver definido).
Testando UI localizada (React / Next.js)
Renderize componentes dentro de um provedor Intlayer e faça asserções no conteúdo visível.
Exemplo React (Testing Library):
Copiar o código para a área de transferência
Exemplo Next.js (App Router): use o wrapper do framework:
Copiar o código para a área de transferência
Dicas:
- Quando precisar dos valores brutos das strings para atributos (ex.:
aria-label), acesse o campo.valueretornado poruseIntlayerno React. - Mantenha os dicionários localizados junto com os componentes para facilitar os testes unitários e a limpeza.
Integração Contínua
Execute a auditoria CLI no CI. Ela falha o job quando faltam traduções obrigatórias.
package.json:
Copiar o código para a área de transferência
Alternativa: Vitest
Copiar o código para a área de transferência
Exemplo GitHub Actions:
Copiar o código para a área de transferência
Opcional: execute a auditoria CLI para um resumo legível por humanos junto com os testes:
Copiar o código para a área de transferência
Solução de Problemas
- Certifique-se de que sua configuração do Intlayer define
localese (opcionalmente)requiredLocales. - Se seu aplicativo usa dicionários dinâmicos ou remotos, execute os testes em um ambiente onde os dicionários estejam disponíveis.
- Para monorepos mistos, use
--base-dirpara apontar o CLI para a raiz correta da aplicação.
