Блог A1QA

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

Стратегия тестирования локализации для успешной реализации проекта

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

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

Какие проблемы могут возникнуть?

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

Кто должен проводить тестирование: инженер или лингвист?

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

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

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

Какие обязанности у инженера?

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

Передовые практики

1. Тестирование псевдолокализации

Это техника нацелена на проверку локализуемости строк перед самой локализацией и зачастую является частью процесса тестирования интернационализации. Во время псевдолокализации стандартные отображаемые символы заменяются на потенциально проблематичные. Далее псевдолокализованное ПО может пройти проверку корректности работы основной функциональности. В среднем 70-80% дефектов обнаруживаются на раннем этапе в результате проведения псевдолокализации.

2. Автоматизация

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

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

Как в A1QA автоматизировали тестирование локализации для «Лаборатории Касперского»

«Лаборатория Касперского» обратилась к A1QA для всестороннего тестирования портала My Kaspersky, а также автоматизации тестирования локализации и интернационализации.
Команда Касперского в сотрудничестве с командой тестирования A1QA работала над доставкой 31 локализации.

Инженеры A1QA разработали 64 автоматизированных тестовых сценария для создания скриншотов локализации, которые покрывали более 90% страниц, доступных пользователям. Сценарии были настроены на воспроизведение в заданных локалях (различные комбинации страна/язык), таким образом делались снимки экрана и записывались метаданные для каждого скриншота.

Так называемые метаданные представляли собой xml-файл с набором элементов LocalizedString, включающих текст, уникальный ключ и позицию текста на скриншоте.

Используя специальные инструменты анализа, инженеры смогли достигнуть 2 основных целей:

  1. Сравнить одни и те же страницы разных версий продукта для регрессионного тестирования;
  2. Сравнить одни и те же страницы для разных локализациях.

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

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

  • С привлечением команды A1QA портал My Kaspersky был локализован и адаптирован к 31 языку.
  • Команда по автоматизации тестирования A1QA разработала набор тестов, которые могут в дальнейшем поддерживаться и использоваться командой заказчика для локализации новых сущностей и функциональности.

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

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

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