В эпоху цифровой трансформации контроль качества (QA) программного обеспечения играет важную роль в выявлении недостатков в дизайне и обеспечивает функциональность и защищенность продукта.
Каждый новый год — это начало новой главы, поэтому в этой статье я расскажу о нескольких ключевых тенденциях в обеспечении качества ПО, на которые следует обратить внимание в 2022 году.
Тестирование локализации
Выход на международный рынок. Всё больше приложений от разработчиков из самых разных стран планируют выходить на новые рынки и предлагать специальные функции, ориентированные на местную аудиторию.
В этом контексте тестирование локализации позволяет обеспечить работу всех функций продукта, точность информации в нем и его пригодность для использования в конкретном регионе.
Ключевые проверки:
В локализованном интерфейсе те же элементы, что в исходной версии.
Выравнивание и макет размещения текста.
Поля ввода.
Сообщения.
Специальные символы и гиперссылки.
Формат даты, времени и номеров телефонов.
Популярные инструменты для тестирования локализации:
Псевдолокали (Android Studio).
BrowserStack.
Testlio.
Что такое псевдолокаль?
Псевдолокаль — это локаль, предназначенная для имитации языковых особенностей, которые вызывают проблемы с интерфейсом, макетом и другими элементами приложения при переводе.
Псевдолокаль формируется мгновенно с помощью автоматического преобразования всех локализуемых сообщений, результатом которого является читаемый английский текст. Если какой-то текст оказался не переведен на псевдолокаль, это означает, что в исходном коде какие-то сообщения не охвачены процессом локализации.
Псевдолокали экономят время и деньги: они позволяют сначала скорректировать текст интерфейса и его макет, и только после этого отправлять сообщения в репозиторий, а затем — на перевод.
Названия псевдолокалей (в системе Android) соответствуют стандартным соглашениям об именовании локалей, а их идентификаторы читаются всеми языками программирования, совместимыми с BCP 47. В этом смысле псевдолокали не отличаются от остальных языковых стандартов — французского, итальянского, китайского и других.
На платформе Android есть две псевдолокали — для представления языков с письмом слева направо (LTR) и справа налево (RTL).
Английский (XA). Добавляет к основному тексту интерфейса на английском языке латинские диакритические знаки, удлиняет исходные строки, добавляя обычный текст, и заключает каждое сообщение в квадратные скобки, чтобы выявить возможные проблемы из-за удлинения строк. Возможные проблемы: ошибки макета и неправильно сформированный синтаксис сообщения, о чем свидетельствует разделение одного предложения на несколько частей, заключенных в квадратные скобки.
AR (XB). Меняет направление «слева направо» исходного текста на «справа налево», в результате чего порядок символов в исходном сообщении становится обратным.
Включение псевдолокалей
Псевдолокали обычно добавляются в сборки для разработчиков. Чтобы включить их для приложения в Android Studio, добавьте в файл build.gradle следующую конфигурацию.
//Groovy
android {
...
buildTypes {
debug {
pseudoLocalesEnabled true
}
}
}
//Kotlin
android {
...
buildTypes.getByName("debug") {
isPseudoLocalesEnabled = true
}
}
Как обнаружить проблемы с локализацией?
Псевдолокали — это быстрый и эффективный способ выявить следующие потенциальные проблемы с локализацией в интерфейсе:
Жестко запрограммированные строки, которые нельзя отправить на перевод, в псевдолокали отображаются как текст без диакритических знаков, что позволяет легко их заметить.
Проблемы с макетом интерфейса, вызванные удлинением текста. Позволяют определить, где интерфейс может «сломаться» из-за длины текста.
Объединение строк, когда одно сообщение составлено из двух и более фрагментов в квадратных скобках. Такая ситуация может затруднить правильный перевод, поскольку переводчики будут работать с этими фрагментами по отдельности, не зная, что они связаны между собой.
Проблемы с двунаправленным текстом (BIDI), например, когда текст с одним направлением включает в себя фразу с противоположным направлением, что затрудняет чтение строки.
Проблемы с направлением «справа налево» (RTL), например, отсутствие зеркального отображения элементов.
Визуальное тестирование
При таком тестировании визуальный вывод приложения оценивается и сравнивается с ожидаемым UX-дизайном. В процессе тестирования можно обнаружить визуальные ошибки в веб-элементах и цветовом кодировании.
Визуальное тестирование работает на слое взаимодействия с пользователем и позволяет масштабировать различные проверки и внешний вид интерфейса на самые разные цифровые платформы — в отличие от дифференциального тестирования. Инструменты автоматического визуального тестирования решают проблему регулярных изменений в слое интерфейса, а также постоянно растущего числа платформ, размеров экрана и конфигураций.
Ключевые проверки:
Высота и ширина.
Видимость (да, нет).
Цвет фона.
Координаты.
Проводить такое тестирование можно методом снимков: в различных точках тестового запуска делается растровый снимок экрана, после чего проводится попиксельное сравнение с базовым изображением.
Популярные инструменты автоматического визуального тестирования:
Applitools.
Kobiton.
LambdaTest.
Percy.
Тестирование игр
В этом случае оценивается качество видеоигры. Основная цель — выявление дефектов и ошибок в игре, а также повышение стабильности и производительности.
Ключевые проверки:
-
Логика игрового процесса:
— Правила прохождения уровней.
-
Визуальные атрибуты:
— Действия игрока и управление музыкой.
-
Камера:
— Приближение и отдаление, кинематографический вид и повторы.
Функции геймпада и кнопок.
Тексты, касающиеся юридических вопросов и конфиденциальности.
Ролики и тизеры.
Передвижение и размещение игрока.
Результаты и статистика игрока.
Спецэффекты (например, вибрация), экраны загрузки, а также действия, активируемые несколькими кнопками.
Повышение производительности очень важно для оптимизации скорости работы игры. Ниже приведены ключевые параметры производительности, которые необходимо тестировать.
Расход заряда аккумулятора: должен быть оптимальным на протяжении нескольких часов. На время отклика игры на различных устройствах не должна влиять высокая нагрузка.
Ограничения процессора и памяти.
Время отклика на клиенте и сервере.
Тестирование AI и ML
Технологии искусственного интеллекта (AI) и машинного обучения (ML) хорошо себя зарекомендовали в обработке данных и паттернов и сегодня представляют собой движущие силы цифровой эры.
Организации по всему миру движутся к внедрению приложений и продуктов на основе AI, поэтому у этих технологий огромный потенциал роста в ближайшем будущем.
Тестовые случаи для приложений на основе AI (ML) должны соответствовать приемлемой точности: фиксированный набор входных данных при анализе миллионов паттернов AI-системами становится неактуальным.
Ниже приведены ключевые элементы в стратегии тестирования приложения (продукта) на основе AI (ML).
-
Алгоритмы:
— NLP (обработка естественного языка).
— Глубокое обучение.
— Обработка изображений.
-
Данные:
— Создание и маркировка.
— Идентификация наборов тестовых данных.
— Кластеризация.
Нефункциональное тестирование (NFR).
Анализ решений.
-
Обратное тестирование модели:
— Обратное тестирование модели полезно при оценке допущений, полученных из тестирования модели (дизайна) на исторических данных.
— Обратное тестирование очень эффективно при определении точности модели.
Заключение
В этой статье мы рассмотрели тенденции в сфере обеспечении качества, на которые следует обратить внимание в 2022 г., и подробно разобрали этапы проверок и популярные инструменты. Надеюсь, вам было интересно. Если это так, поддержите статью, пишите комментарии и распространяйте ее.
Желаю, чтобы 2022 год стал для вас приятным удивлением.
С уважением, Karthik
Хотелось бы также выразить благодарность Теодоре Караниколе.
О переводчике
Перевод статьи выполнен в Alconost.
Alconost занимается локализацией игр, приложений и сайтов на 70 языков. Переводчики-носители языка, лингвистическое тестирование, облачная платформа с API, непрерывная локализация, менеджеры проектов 24/7, любые форматы строковых ресурсов.
Мы также делаем рекламные и обучающие видеоролики — для сайтов, продающие, имиджевые, рекламные, обучающие, тизеры, эксплейнеры, трейлеры для Google Play и App Store.