пятница, 10 декабря 2021 г.

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

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

Это когда вы можете переключать язык в интерфейсе, обычно "Рус / Eng", но бывают и многоязычные приложения! Что тестировать в таком случае?

  1. Адекватность перевода — при наличии знания языков. Скорее всего, тексты лежат где-то в одном месте в коде, файлики с русскими фраза, английскими и другими языками. Можно вычитать сами файлики.
  2. Пункты меню — все ли переведены?
  3. Кнопки — про них часто забывают. В итоге сайт весь на английском, и большая кнопка «Купить»
  4. Рисунки — про них обычно даже не думают. Переключаешь язык, а там картинка на главной с другим языком осталась...
  5. Длинные фразы — часто любят вылезать за пределы области. Что в одном языке нормально влезает, в другом займет много места. Например, «Поздравляем!» и «Congratulations!». Найти такие фразы помогут файлики с переводом в коде.

Яркий пример «забыли про картинку на главной странице сайта» — сайт foodpanda в 2013 году. Переключаешься на анлийский:

— кнопочка «Log in / Register» обновилась;

— названия блюд и ресторанов тоже;

— а вот огромная картинка «лучшие предложения ресторанов!» гордо висит на русском. С английском кнопкой «начать покупки» =))


Аналогично выбор города остается на русском:

Иногда бывает такое, что приложение вообще крашится при выборе другого языка. У меня такое было в игрушке Broken Sword 1. Суть в чем — нужно расшифровать записку. Если открыть ее на русском языке, приложение вылетит. Если на английском — все хорошо. 

Возможно, при открытии записки программа идет в определенную папку в своей памяти и ищет там файлик «записка.язык». На всех языках она есть, русский файлик забыли сделать. Но программа то его ожидает! Поэтому происходит сбой при попытке обращения.

Так что учтите, ошибки локализации — это не всегда просто картинка с русским текстом среди английского языка!


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

Это не мои примеры, я взяла текст у Светланы Скуратовской. Историю свою Света написала, посетив митап по тестированию в своем городе. И это  дополнение к тому, что рассказывала на митапе Саша Ковалева. Не знаю, будет ссылка на видео с митапа или нет, но мне и эта история понравилась! Дальше со слов автора:

Саша рассказывала про локализацию и я вспомнила свои проекты...

Первый раз я столкнулась с переводом сайта в 2008 году. Небольшой стартап каким-то чудом получил заказ на локализацию сайта одного автомобильного гиганта. Фиксед прайс, что подразумевало сжатые сроки. Мы наступили на все возможные грабли. Я узнала очень много нового про кодировки, сортировку, файлы ресурсов и так далее... Хорошо что там были только европейские языки. Плохо что был немецкий =))

После этого проекта я с легкостью справилась с адаптацией одного банковского продукта под наш рынок: перевод «в одну сторону» и тестирование. Казалось я знаю про переводы всё. 

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

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

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

- все взаимодействия с пользователем (письма, нотификации, СМС);

- взаимодействия с оборудованием (принтер, сканер, экспорт куда-то);

- переходы по страницам и обратно (!) со сменой языка;

- правильно ли выбирается дефолтный язык.


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

2 комментария:

  1. Статья супер! В самом начеле немного поправить надо, а то "понимается не понимается не локализация" :)

    ОтветитьУдалить