Задайте питання та отримайте підсумок документа, вказавши цю сторінку та обраного вами постачальника штучного інтелекту
Історія версій
- "Зробити тест асинхронним і додати опцію build"v6.0.105.10.2025
- "Впровадження тестування"v6.0.020.09.2025
Вміст цієї сторінки перекладено за допомогою штучного інтелекту.
Переглянути останню версію оригінального вмісту англійськоюЯкщо у вас є ідея щодо покращення цієї документації, будь ласка, долучіться, надіславши pull request на GitHub.
Посилання на документацію на GitHubСкопіювати документацію у форматі Markdown в буфер обміну
Тестування вашого контенту
Цей посібник показує, як автоматично перевіряти повноту ваших словників, виявляти відсутні переклади до релізу та тестувати локалізований UI у вашому додатку.
Що ви можете перевірити
- Відсутні переклади: провалювати CI, якщо для будь-якого словника відсутні обов'язкові локалі.
- Локалізований рендер UI: відрендерити компоненти з провайдером конкретної локалі та перевірити видимий текст/атрибути.
- Перевірки під час збірки: швидко виконати аудит локально через CLI.
Швидкий старт: аудит через CLI
Запустіть аудит з кореня вашого проєкту:
Скопіюйте код у буфер обміну
Корисні прапорці:
--env-file [path]: завантажити змінні середовища з файлу.-e, --env [name]: вибрати профіль середовища.--base-dir [path]: встановити базову директорію додатку для вирішення шляхів.--verbose: показувати детальні логи.--prefix [label]: додавати префікс до рядків логу.--build [build]: збирати словники перед тестуванням, щоб переконатися, що вміст актуальний. True примусово виконає збірку, false пропустить збірку, undefined дозволить використовувати кеш збірки.
Примітка: CLI виводить детальний звіт, але не завершує виконання з ненульовим кодом при помилках. Для контролю в CI додайте модульний тест (нижче), який перевіряє, що кількість відсутніх обов'язкових локалей дорівнює нулю.
Програмний тест (Vitest/Jest)
Використайте API Intlayer CLI, щоб переконатися, що для обов'язкових локалей немає відсутніх перекладів.
Скопіюйте код у буфер обміну
Jest еквівалент:
Скопіюйте код у буфер обміну
Як це працює:
- Intlayer читає вашу конфігурацію (locales, requiredLocales) та оголошені словники, а потім звітує:
missingTranslations: по‑ключу, які локалі відсутні та з якого файлу.missingLocales: об'єднання всіх відсутніх локалей.missingRequiredLocales: підмножина, обмеженаrequiredLocales(або всі локалі, якщоrequiredLocalesне встановлено).
Тестування локалізованого інтерфейсу (React / Next.js)
Рендерте компоненти під провайдером Intlayer та перевіряйте видимий вміст.
Приклад для React (Testing Library):
Скопіюйте код у буфер обміну
Next.js (App Router) example: use the framework wrapper:
Скопіюйте код у буфер обміну
Поради:
- Коли потрібні сирі рядкові значення для атрибутів (наприклад,
aria-label), отримуйте поле.value, яке повертаєuseIntlayerв React. - Тримайте словники поруч з компонентами для спрощення юніт-тестування та очищення.
Неперервна інтеграція
Додайте тест, який завершуватиме збірку з помилкою, коли відсутні обов'язкові переклади.
package.json:
Скопіюйте код у буфер обміну
Приклад GitHub Actions:
Скопіюйте код у буфер обміну
Необов'язково: запустіть аудит CLI, щоб отримати зрозумілий для людини підсумок разом із тестами:
Скопіюйте код у буфер обміну
Усунення неполадок
- Переконайтеся, що ваша конфігурація Intlayer визначає
localesі (за потреби)requiredLocales. - Якщо ваш застосунок використовує динамічні або віддалені словники, запускайте тести в середовищі, де ці словники доступні.
- Для змішаних монорепозиторіїв використовуйте
--base-dir, щоб вказати CLI правильний корінь застосунку.