Блог A1QA

О тестировании и качестве ПО

Локализация vs интернационализация: что важно учитывать при тестировании

Более пяти лет выделенная команда A1QA обеспечивает качество приложения для коммуникации и взаимодействия между различными медицинскими приборами. Данное приложение и медицинское оборудование, на которое оно устанавливается, используется по всему миру.

На сегодняшний день приложение поддерживает 18 локалей, включая два китайских письма (упрощенное и традиционное) и корейский язык. Соответственно, в план по разработке приложения были включены как процессы интернационализации, так и локализации.

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

Глобализация — основа международного использования продукта

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

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

Интернационализация (I18n) — процесс создания и разработки продукта, который в последующем обеспечит безбарьерную локализацию ПО. Например, разработчик должен заложить в CSS основу для вертикального текста, если в будущем планируется локализовать продукт на язык с вертикальным письмом.

Локализация (L10n) – адаптация продукта и его документации к языковым соответствиям, культурным и другим требованиям целевого рынка или рынков (локалей).

Переходя непосредственно к задачам I18n и L10n, выделим следующие пункты, на которые должен обратить внимание специалист по тестированию:
Что учесть при тестировании локализации ПО?
Теперь поясним. В процессе интернационализации важно, чтобы разработчик использовал кодировки UNICODE. Это сделает возможной поддержку практически всех письменных языков. Также важно обеспечить поддержку приложением различных форматов календарей, дат, систем мер, единиц измерения.

Следует отметить, что при интернационализации важна возможность изменить направление текста и расположение элементов интерфейса (например, справа налево для арабских стран, либо расположение иероглифов сверху вниз для азиатского региона).

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

Локализация: мысли глобально – действуй локально

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

При локализации обязательно учитываются правовые требования, которые поддерживаются в различных регионах. К примеру, в России совершеннолетие наступает в 18 лет, в США в зависимости от штата этот возраст варьируется от 18 до 21 года, а в Японии молодые люди считаются совершеннолетними с 20 лет. Поэтому при разработке и тестировании, например, интернет-магазина с возрастными ограничениями, необходимо обязательно их учитывать.

Также стоит обращать внимание на поддержку валюты и операций с ней для каждой страны.

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

Например, красный цвет для жителей Китая – символ выносливости и веры, а в Индии он символизирует чистоту. Европа же, наоборот, видит в этом цвете грех и жертвенность. Для жителей Южно-Африканской Республики – это цвет скорби, а для австралийских аборигенов – цвет земли. В США и Японии красный цвет символизирует опасность и террористическую угрозу, а у египтян ассоциируется с трауром. Поэтому рекомендуем обращать внимание на цветовые решения, если они будут иметь важность для приложения.

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

В том случае, если в приложении используются интеграции со сторонними ресурсами (например, облачные хранилища), необходимо учитывать их доступность для регионов. К примеру, в Китае запрещено использование сервисов Google, DropBox, YouTube, Facebook. И если мы делаем китайскую локализацию, то обязательно стоит помнить, что интеграция с этими ресурсами недопустима.

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

Поделиться статьей: