Разделы портала

Онлайн-тренинги

.
Тестирование локализации
15.08.2019 00:00

Автор: Кристин Джеквони (Kristin Jackvony)
Оригинал статьи
Перевод: Ольга Алифанова

Если ваше приложение используется в других странах, то, скорее всего, у него есть какая-то локализационная стратегия. Многие полагают, что локализация – это просто перевод на другой язык, но это не так. Вот примеры локализации, которая может использоваться в вашем приложении:

Язык: в разных странах говорят на разных языках, однако это верно не только для стран, но и для регионов. Например, в канадской провинции Квебек говорят в основном по-французски, а в прочих провинциях – по-английски.

Правописание: даже когда две области говорят на одном языке, они могут писать по-разному. К примеру, цвет пишется как "color" в США, но как "colour" в Канаде и Великобритании.

Слова и идиомы: они могут различаться даже в пределах одного языка. В Великобритании грузовик – lorry, а багажник – boot. В США, глагол "table" применительно к теме разговора означает, что этот разговор нужно отложить, а в Великобритании и Канаде – что на эту тему нужно немедленно начать говорить, полная противоположность США!

Валюта: различается для разных стран, но это значит не только использование разных значков перед суммой, вроде $ или £. Валюты также могут по-разному форматироваться. В США центы отделяются точкой, а числа выше тысячи разделяются запятой. В Великобритании все наоборот. 1, 000.00 в США – это 1.000,00 в Лондоне.

Форматы даты и времени: в США даты пишутся как месяц/день/год, а в Великобритании – как день/месяц/год. В США, как правило, используют AM и PM, обозначая время, но во многих странах используется 24-часовое время, и 1:00 PM в США превратится в 13:00.

Системы мер и весов: в США, как правило, используются единицы измерения традиционной американской системы – фунты для веса и футы с дюймами для длины. В большинстве прочих стран применяется метрическая система. Большая часть стран также измеряет температуру по Цельсию, а в США это делается по Фаренгейту.

Индексы и номера телефонов: очень сильно различаются в разных странах. См. мои статьи про международные телефонные номера и индексы.

Изображения: картинки, возможно, придется менять в зависимости от страны, принимая во внимание определенные моменты. К примеру, если приложение будет использоваться повсеместно, то изображение здания с американским флагом – возможно, не очень хорошая идея. А если приложение предназначено для религиозных стран, то лучше убрать фотографию человека в безрукавке.

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

Первый шаг в тестировании локализации – это определение, что именно планируется локализовывать. Ваша компания может решить локализовать дату и время, индексы и телефоны, но не язык. Или, к примеру, мобильное приложение будет использовать только языки, установленные в устройстве – текст приложения будет на определенном едином языке, а кнопки – на пользовательском.

Если ваше приложение будет использовать несколько языков, составьте список всех текстов, нуждающихся в проверке. Скажем, если у вас есть пункты меню "Домой", "Поиск", "Ваш профиль" и "О нас", а ваше приложение будет переводиться на французский и испанский, узнайте, как должны выглядеть эти пункты меню на французском и испанском. Безусловно, переводчик должен посоветоваться с носителем языка, чтобы убедиться, что перевод верен.

Затем приступите к тест-плану. Простейший способ – это сделать табличку, где в левой колонке будут типы локализации, которые нужно тестировать, а в первой строке – страны. Вот простенький пример:


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

Другой важный момент – убедиться, что переведенный текст хорошо выглядит в приложении. К примеру, кнопка Save может отлично смотреться в английской версии, но в немецкой она будет выглядеть так:


Завершив тестирование локализации, вы, возможно, захотите его автоматизировать. Это можно сделать при помощи инструментов автоматизации на уровне интерфейса – например, Selenium. Можно сделать отдельный набор тестов для каждого языка, где шагом установки будет выбор нужной страны в браузере или устройстве, а каждый тест будет проверять один аспект локализации – к примеру, верный язык текста на кнопках или возможность ввести индекс в формате выбранной страны. Полезно также использовать инструмент вроде Applitools для валидации правильного отображения кнопок или иконок национальных флагов.

Локализация – сложное дело, и ее так же сложно совершенствовать, как и ПО. Но если вы и ваша команда четко знаете, что вы хотите локализовать, и методично подходите к тестированию, вы можете быть уверены, что большая часть пользователей будет довольна.

Обсудить в форуме