Тестирование локализации и интернационализации (глобализации)

Что такое локализация

Простыми словами: сделать приложение/сайт и его контент более близким, понятным, приспособленным для определенной географической местности, локали (страна, регион + языка).

Быстрый пример: если хотите вывести приложение/сайт на японский рынок, наверняка придется перевести контент на японский язык и учитывать национальные особенности — только тогда можно ожидать хороших показателей конверсии. 

Локализация касается многих неочевидных вещей, тем не менее важных, например, у европейцев принято при знакомстве пожимать руки, а японцы при знакомстве стараются этого не делать, вместо этого раскланиваются, они вообще не любят физический контакт с незнакомыми людьми. Это означает например, что если на логотипе продукта или на сайте есть изображение рукопожатия как символ согласия, то лучше заменить его на изображение кланяющихся друг другу людей — так, скорее всего, можно привлечь больше внимания японской аудитории.

Картинки

Глобализация бренда Starbucks
Чтобы глобализироваться, то есть выйти на глобальный рынок, Старбаксу пришлось убрать из логотипа английский текст
Старбакс в России
После «ухода» из России логотип Старбакса был успешно локализирован надеванием на русалку кокошника вместо короны
Интернационализация KFC
Вот такие изменения при глобализации бренда претерпевал логотип KFC
Brand globalization - McDonalds
Также и Макдональдс.

Тестирование локализации

Это проверка качества локализации. Чтобы понять, что такое некачественно проведенное тестирование локализации, достаточно вспомнить, как отвратительно выглядят «кракозябры» на сайте, если «слетела» кодировка. Или если это случилось в мобильном приложении на каком-то из восточноазиатских языков, когда нельзя даже понять, где кнопка «Выход».

Характеристики

  • Современный софт очень сложен. Буквально один кусок кода, или одно неудачное слово может «сломать» весь user experience у жителя определенной страны или региона. Тестирование локализации попросту необходимо, если приложение изначально ориентировано на глобальную аудиторию, или готовится его выход.
  • Тестирование локализации, если проведено на ранних этапах цикла, иногда позволяет выловить баги и не относящиеся к локализации/шрифтам и т.п.
  • Повышает ROI, отдачу инвестиций, ускоряет цикл, и эффективность на глобальном рынке
  • Немаловажный факт: снижает нагрузку на дизайнеров и разработчиков. Ни разработчики, ни особенно дизайнеры не любят возвращаться к своим ошибкам и исправлять их. Тестирование локализации позволяет меньше думать над исправлением, и больше над созиданием
  • Это то самое Quality Assurance, целью которого является идеальный продукт, удовлетворяющий клиентуру

Две важнейшие вещи в тестировании локализации

Это UI/UX, и национальные символы. Это те две вещи, вокруг которых сосредоточено 90% внимания QA-инженера при тестировании локализации. Все остальные, типа правильности расположения плейсхолдеров, хоткеев, идут после.

UI/UX

Вообще, лучше всего начинать тестирование локализации с этапа дизайна, плотнее работая с дизайнерами. Вместо стандартного порядка:

  1. Дизайн
  2. Локализация
  3. Фактически возвращение на этап дизайна — приспособление дизайна для новых регионов,

Лучше видеть воочию, как создается дизайн (в виде превью) и параллельно локализировать.

Тестирование локализации - параллельные макеты
Тестировщик видит: в испанской версии символов чуть больше, и сообщает дизайнеру

Иными словами, хорошая практика — непрерывное тестирование дизайнов для других локалей. Снижается вероятность, что что-то пойдет не так и придется исправлять это «не так» на позднем этапе.

Лучше автоматизировать эти процессы, подыскав например плагины для Figma или Sketch (это можно уточнить у дизайнера).

Национальные символы

«Головняк» при тестировании локализации в крупной компании: национальные символы. «Глобальное приложение» должно поддерживать очень большой набор символов; работающий способ протестировать это — псевдолокализация с помощью псевдофайлов. Это наборы готовых строк, содержащих множество национальных символов локалей, что позволяет легко видеть, что именно не работает (дефектные символы). Пример текста в псевдофайле: «εта пр0грãмма нə рабоτаеτ». 

Псевдолокализация и псевдосимволы - поиск дефектных символов
Псевдолокализация и псевдосимволы

Советы

Итак, советы для эффективности:

  • Действовать проактивно с дизайнерами и разработчиками
  • Использовать псевдофайлы и, возможно, в больших проектах, (платные) платформы, которые специализируются на локализации/интернационализации и обладают большим опытом выведения продуктов на глобальный рынок
  • Тестирование в симулированных окружениях, в частности в мобильном тестировании пользоваться широкими возможностями Android Studio
  • Локализация — слишком важный аспект, чтобы ею пренебрегать. По настоящему успешное приложение — это глобальное приложение.

Подробнее о тестировании локализации

Итак, тестирование локализации это верификация качества продукта для конкретной культуры

Можно сформулировать и так: создание и проверка локальной версии продукта

  • Например, сайт лидирующего в Китае мессенджера QQ для российского рынка вообще никак не локализирован; поэтому жителю России воспользоваться этим мессенджером с ходу вряд ли удастся; даже ознакомиться с возможностями будет достаточно трудно. 

Локализация часто обозначается как l10n, где l и n — первая и последняя буквы слова «localization», а 10 означает 10 символов между буквами l и n.

Что тестируется всегда

  • Локализация интерфейса:

Как, с точки зрения местного жителя, работает пользовательский интерфейс. Он должен быть не только понятным, но и в достаточной мере комфортным

  • Локализация контента:

Соответствует ли контент приложения/сайта местной культуре — вплоть до стереотипов

  • Языки:

Включая диалекты и региональные. В какой мере житель страны и региона может работать с приложением (совместимость приложения с языком/диалектом страны и региона)

  • Хардварная совместимость:

Тестирование на совместимость аппаратных средств; возможно, в этой стране и этом регионе у местного населения по какой-то причине распространены модели смартфонов, в которых приложение криво отображается и плохо работает

Процесс локализации:

  • Настройка тестового окружения:

Прежде всего, надо подумать, как создать соответствующее тестовое окружение (что, разумеется, в данном случае бывает непросто).

  • Собрать команду:

Состоящую из специалистов со знаниями и умениями, позволяющими компетентно провести тестирование локализации для целевой страны.

  • Генерация скриптов:

Помимо ручного тестирования (абсолютно необходимого в данном случае), проводится автоматизация.

  • Сравнения:

Сопоставление оригинальной и локализованной версий; не потерялось ли что-то; как в целом отличаются локальные атрибуты.

  • Анализ и результаты:

Анализ успешности и анализ результатов. Результаты передаются dev-команде, которая корректирует код, приспосабливая приложение к нужным локациям; и дизайнерам.

Тестирование локализации наглядно (жизненный цикл):

В общем виде:

Локализация ПО - Жизненный цикл
Жизненный цикл тестирования локализации ПО

В крупных компаниях, и если локализация осуществляется для многих стран/регионов, типичный процесс более сложен и состоит из этапов верификации билда, функционального тестирования, регрессионного тестирования, и финальной проверки:

  1. Верификация билда (или дымовое тестирование) — небольшой объем общих операций (функционального тестирования), выполняемых просто для того чтобы убедиться что билд рабочий и можно переходить к другим этапам.
  2. Стандартное тестирование — этап обычных тест-кейсов локализации (см. выше), с фиксацией в логах результатов, и дефектов.
  3. Регрессионное — верификация того, что дефекты исправлены на предыдущем этапе, и при этом не возникло влияние исправления дефектов на другие функции.
  4. Финальная проверка — окончательная проверка сборки перед релизом.

Примеры тест-кейсов тестирования локализации

Описание
1Что доступна справочная информация
2Формат времени и даты для целевого региона
3Формат телефонных номеров
4Обозначения валюты
5Соблюдение основ коммерческого права целевого региона, лицензий, региональных постановлений и пр.
6Общий вид и разметка контента страниц не содержит по крайней мере грубых ошибок (шрифты, строки, направление текста)
7Спецсимволы, гиперссылки, хоткеи
8Валидация полей ввода
9В билдах содержатся все нужные файлы локали
10В локализованном продукте все те же элементы, что в исходном
11Интерфейс локализованного продукта в целом соответствует интерфейсу исходного

Преимущества и недостатки

Преимущества понятны: 

  • Тестирование локализации снижает общую стоимость приложения при его выводе на рынок другой страны
  • А также стоимость его поддержки (если в приложении все понятно с первого раза, никто не будет беспокоить службу поддержки)
  • И время на тестирование (нефункциональных требований)
  • Делает продукт более гибким и масштабируемым

Есть и минусы:

  • Необходимость найти хороших специалистов со знанием локального рынка — идеальным знанием языка, обычаев и порядков, общепринятых в целевой стране
  • Нужно найти не только переводчиков, но и, возможно, местных дизайнеров
  • Поэтому возможны проблемы с временнЫми зонами для созвонов, и составлением графиков для иностранных специалистов

Тестирование интернационализации

Определение

Адаптация ПО к различным (подразумевается: многим) культурам и языкам мира, без внесения модификаций в исходный код.

Известна в IT условным обозначением i18n, где 18 означает количество символов между i и n в слове internationalization.

Интернационализация делает приложение готовым к локализации.

Пример локализации и интернационализации: 

Вы живете в Екатеринбурге, родной язык — русский, в любом случае он более комфортный чем английский, китайский, испанский. Вы открываете сайт крупной международной торговой площадки, чтобы заказать смартфон. На сайте где-то вверху вы находите и кликаете знакомый трехцветный флажок, то есть выбираете локаль «ru-RU» — так более удобно, понятно, ну и чтобы при покупке не ошибиться случайно. После этого контент и интерфейс будут переключены на «русский», а функциональность сайта не изменится — диалоги и визуальные элементы (логотипы и рисунки) вряд ли изменятся. Теперь, скорее всего, вы будете время от времени получать какие-то рекомендации и акционные предложения, зависящие от культуры, например по случаю национальных русских праздников (Масленицы), то есть характерных для вашей культуры и региона. Такая «кастомизация» выдачи индивидуально для вас стала возможна благодаря локализации (и чтобы локализация была безошибочной и беспроблемной — она тестируется).

Аналогичным образом, представим, что приложение крупнейшей китайской торговой площадки доработано, и теперь поддерживает в том числе татарский язык, чтобы таргетировать выдачу на Татарстан. Теперь когда житель Казани или Елабуги заходит на сайт и выбирает свою страну и регион, уточнив язык, вся страница будет «перенастроена» в соответствии с выбранной им локалью. Процесс адаптации приложения для локализации на любой иностранный язык и регион называется интернационализацией

Необходимость интернационализации

  • Чтобы проверить правильность кодировки символов при преобразовании на другой язык
  • Проверка также и того, что если например поисковый запрос не поддерживается целевым языком, то приложение не упадет
  • Основная же цель: привлечение глобальной аудитории по всему миру, путем обеспечения возможности клиентам пользоваться приложением на своем родном языке
  • Убедиться, что внешний вид и пользовательские ощущения («look and feel») на соответствующем уровне в любом целевом регионе.

Принято делить тестирование интернационализации на бекенд— и фронтенд— части.

Тестирование интернационализации на фронтенде:

То есть на «пользовательской стороне» приложения/сайта.

  • Локализация статического контента: кнопок, вкладок, ярлыков, и других статических элементов
  • Местные национальные и культурные особенности: убедиться, что например в календарях, применяемых в целевых регионах, отображаются соответствующим образом время, дата, местная валюта, телефонные номера, почтовые индексы, названия и обозначения праздников и специальных событий. 
  • Feature-based-тестирование: некоторые функции приложения могут активироваться для определенных региональных пользователей и быть скрытыми от других. Это и проверяется: некоторые функции должны быть скрыты для «неподходящих» пользователей, а для целевых они должны быть всегда видимыми, «ровными», и полностью функциональными.
  • Передача файлов: property-файлы различных языков проверяются; локализован ли интерфейс передачи файлов в соответствии с выбранным языком.
  • Динамического контента: диалоговых окон, всплывающих попапов, панелей инструментов и пр. Особое внимание диалоговым окнам — чтобы диалоги из вашего приложения не попадали на местные имиджборды ).

На бекенде

Требует большого опыта в БД. В частности проверка поддержки символов Unicode этой БД. 

Проверка работы со стороны бэкенда с различными языками, кодировками, валютами, отдельно поиск по сайту, и тестирование заполняемых форм.

Выгоды интернационализации:

  • Безусловное расширение пользовательской базы (ведь население мира 8 миллиардов человек — громаднейший потенциал для любого проекта)
  • Через увеличение видимости и охвата целевой аудитории на весь мир (в идеале), с помощью персонализированной визуализации предлагаемого контента
  • Единый исходный код для всех версий приложения
  • Глобальные релизы приложения с меньшими затратами средств и времени
  • Улучшение общего уровня качества и уровня архитектурного совершенства приложения
  • И более простое обслуживание (чем если делается хаотично по ситуации или вообще не тестируется)
  • Снижение стоимости владения различными версиями продукта
  • Соблюдение международных стандартов

Разница между локализацией и интернационализацией

Интернационализация (i18n)Локализация (l10n)
Это подход к дизайну продукта или услуги, которые могут быть локализованы для любого региона или рынка с минимальными изменениями в контенте или в исходном коде.Это подход к дизайну продукта или услуги, которые специально локализуются только для определенной целевой аудитории или регионального рынка.
Благодаря интернационализации продукт или услуга могут быть легко локализованы для любого рынкаПри локализации для одного рынка вы не факт что сможете так же легко локализовать продукт / услугу для другого рынка
В результате получается универсальный и адаптируемый продуктВ результате получается высокоспецифичный и регионально-ориентированный продукт

Вместе локализация + интернационализация называются глобализацией продукта. Все просто:

Глобализация, локализация, интернационализация ПО
Глобализация, локализация, интернационализация ПО

Этот процесс тоже имеет свое IT-обозначение (g11n). Как и простой перевод контента приложения (t9n), если ограничиваются этим.

Источники: 1,2,3,4,5,6,7

***

Автоматизация в Телеграме

Какой была ваша первая зарплата в QA и как вы искали первую работу?

Мега обсуждение в нашем телеграм-канале о поиске первой работы. Обмен опытом и мнения.

Подписаться
Уведомить о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии

Мы в Telegram

Наш официальный канал
Полезные материалы и тесты
Готовимся к собеседованию
Project- и Product-менеджмент

? Популярное

? Telegram-обсуждения

Наши подписчики обсуждают, как искали первую работу в QA. Некоторые ищут ее прямо сейчас.
Наши подписчики рассказывают о том, как не бояться задавать тупые вопросы и чувствовать себя уверенно в новой команде.
Обсуждаем, куда лучше податься - в менеджмент или по технической ветке?
Говорим о конфликтных ситуациях в команде и о том, как их избежать
$1100*
медианная зарплата в QA в июне 2023

*по результатам опроса QA-инженеров в нашем телеграм-канале

Собеседование

19%*
IT-специалистов переехало или приняло решение о переезде из России по состоянию на конец марта 2022

*по результатам опроса в нашем телеграм-канале

live

Обсуждают сейчас