четверг, 3 ноября 2016 г.

Панбагон. Краш при смене языка, ошибка локализации

Пару дней назад я жаловалась на то, что игрушка Broken Sword 1 вылетает при попытке изучить зашифрованную записку.

Конечно, было бы восхитительно, если бы разработчики шустро правили баги, о которых наябедничали им в соцсетях. Написал заметку "как воспроизвести", указал разработчика в фейсбуке, типа "вот ваша игра вылетает" и бац, через пару дней уже работает! Но нет (((

Иногда такое работает, но чаще игнорируют. Поэтому я пошла жаловаться конкретнее — оставить отзыв в App Store, что игра вылетает и ваще. И что я там вижу? С июня как минимум идут сообщения "Не качайте, игра вылетает на пристани. Заплатил 300р за 10 минут игры". Мда... Один из отзывов привлек мое внимание — Дэниэл написал, что, если поменять язык на английский, записка откроется:

Отзыв Дэниала помог пойти падающий участок игры

Хм! Пошла пробовать))) Меняю язык на английский и... Работает! Открылась записка:
Вот оно, зашифрованное письмо, которое разработчик 
забыл перевести на русский. Что и приводило к крашу

Записка зашифрована. Надо сопоставить иероглифы и "нормальные буквы", то есть буквы английского языка. Сразу стало понятно, почему игра вылетала. Сопоставлять надо было с английским, эту записку, походу, просто не перевели на русский.

С одной стороны, я расстроена. Краш приложения — это недопустимый баг даже для бесплатного приложения. А если ты еще и деньги берешь, то:

  1. Надо ловить краши самому, тестируя продукт.
  2. Если пользователи пожаловались — надо исправлять, причем ASAP.
А тут и сами не нашли, и многочисленные жалобы игнорятся. Ппц просто. Больше не горю желанием этой компании денег платить. А эти отзывы не видела, потому что купила комплект игр.

С другой стороны, мне нравится сам баг. Это же прекрасно! Баг локализации. Если ваше приложение переведено на разные языки — нужно проверить их все. Причем желательно послоностью. Пройди тестировщик при регрессии игру полностью, он бы быстро нашел этот баг. Но языков в игре много, а комбинаций еще больше, так как есть два параметра:
  • язык субтитров;
  • язык звучания
Комбинаций для тестирования многовато, согласна

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

Но если смотреть с точки зрения тестировщика, а не поиска виноватых, история интереснее. Что нам надо проверить на разных языках, если времени пройти приложение полностью нету? Нам надо выделить разные классы эквивалентности, в которых есть текст:
  1. Киношки — до того, как начнется игра и в некоторых других местах ты ничего не делаешь, просто смотришь небольшое видео. Оно должно быть на выбранном языке.
  2. Как персонаж думает, когда ты что-то делаешь. Голос + всплывающее окно с текстом. 
  3. Как персонаж говорит с другими персонажами. Диалоги отличаются от разговоров с самим с собой, поэтому их тоже надо проверить
  4. Дневник, где записывается, что происходит.
  5. Подсказки.
  6. Настройки.
Казалось бы, это все, что нужно. Просто не подумали о фрагменте игры, где надо расшифровать английскую записку. А ведь это отдельный класс эквивалентности. Мы знаем, как выглядит записка и как иероглифы матчатся на английские буквы, мы это наверняка тестировали во время главной проверки игры на основном языке. И тут должен возникнуть вопрос "а как метчатся иероглифы на другой язык"? Доходим до этого места, сохраняем игру. Потом открываем сохранение под разными языками и проверяем.

Помочь найти такой баг может интеллектуальный тур, имхо. Это хитрый вопрос "а что, если?". А вот исправить можно просто. Даже если метчить на все пддерживаемые языки записку не получается, можно оставить ее на английском. Просто проверить, что она открывается и буковки там английские, даже если основная игра на другом языке. И все!

PS — добавила пост в общую копилку багов.

Комментариев нет:

Отправить комментарий