Спросите свой вопрос и получите сводку документа, используя эту страницу и выбранного вами поставщика AI
Этот документ устарел, базовая версия была обновлена 5 октября 2025 г..
Перейти к английской документацииИстория версий
- "Введение тестирования"v6.0.020.09.2025
Содержимое этой страницы было переведено с помощью ИИ.
Смотреть последнюю версию оригинального контента на английскомЕсли у вас есть идея по улучшению этой документации, не стесняйтесь внести свой вклад, подав запрос на вытягивание на GitHub.
Ссылка на документацию GitHubКопировать Markdown документа в буфер обмена
Тестирование вашего контента
Это руководство показывает, как автоматически проверять полноту ваших словарей, выявлять отсутствующие переводы до выпуска и тестировать локализованный пользовательский интерфейс в вашем приложении.
Что вы можете тестировать
- Отсутствующие переводы: провалить CI, если для любого словаря отсутствуют обязательные локали.
- Отрисовка локализованного UI: рендерить компоненты с провайдером конкретной локали и проверять видимый текст/атрибуты.
- Аудиты во время сборки (build time): запускать быстрый аудит локально через CLI.
Быстрый старт: аудит через CLI
Запустите аудит из корня вашего проекта:
Копировать код в буфер обмена
Полезные флаги:
--env-file [path]: загрузить переменные окружения из файла.-e, --env [name]: выбрать профиль окружения.--base-dir [path]: задать базовую директорию приложения для разрешения путей.--verbose: показывать подробные логи.--prefix [label]: добавлять префикс к строкам логов.
Примечание: CLI выводит подробный отчет, но не завершает работу с ошибкой при обнаружении проблем. Для контроля в CI добавьте юнит-тест (ниже), который проверяет отсутствие отсутствующих обязательных локалей.
Программное тестирование (Vitest/Jest)
Используйте API Intlayer CLI, чтобы проверить, что отсутствующих переводов для обязательных локалей нет.
Копировать код в буфер обмена
Эквивалент для Jest:
Копировать код в буфер обмена
Как это работает:
- Intlayer читает вашу конфигурацию (locales, requiredLocales) и объявленные словари, затем сообщает:
missingTranslations: для каждого ключа, какие локали отсутствуют и из какого файла.missingLocales: объединение всех отсутствующих локалей.missingRequiredLocales: подмножество, ограниченноеrequiredLocales(или все локали, еслиrequiredLocalesне установлены).
Тестирование локализованного UI (React / Next.js)
Рендерьте компоненты под провайдером Intlayer и проверяйте видимый контент.
Пример для React (Testing Library):
Копировать код в буфер обмена
Пример для Next.js (App Router): используйте обертку фреймворка:
Копировать код в буфер обмена
Советы:
- Когда вам нужны необработанные строковые значения для атрибутов (например,
aria-label), обращайтесь к полю.value, возвращаемомуuseIntlayerв React. - Храните словари рядом с компонентами для упрощения модульного тестирования и очистки.
Непрерывная интеграция
Добавьте тест, который будет прерывать сборку, если отсутствуют необходимые переводы.
package.json:
Копировать код в буфер обмена
Пример GitHub Actions:
Копировать код в буфер обмена
Опционально: запустите аудит CLI для получения удобочитаемого отчёта вместе с тестами:
Копировать код в буфер обмена
Устранение неполадок
- Убедитесь, что ваша конфигурация Intlayer определяет
localesи (опционально)requiredLocales. - Если ваше приложение использует динамические или удалённые словари, запускайте тесты в среде, где эти словари доступны.
- Для смешанных монорепозиториев используйте
--base-dir, чтобы указать CLI правильный корень приложения.