Тестирование мобильных приложений

Тестирование мобильных приложений

В MobileUp работают инженеры по контролю качества продукта. Мы подключаемся на этапе написания технического задания и следим за качеством проекта до момента публикации в магазине приложений. После публикации, конечно, тоже следим, но уже в режиме поддержки.

01

Задачи

Какие задачи решает тестирование

  • Обратная связь по качеству продукта

  • Обеспечение качества продукта

  • Обнаружение и предотвращение ошибок

02

Услуги

Какие задачи решает MobileUp

В MobileUp мы предлагаем два вида тестирования: Auto (автоматизированное) и Manual (ручное). Чаще всего применяем ручное, но у нас есть несколько очень больших проектов, где не обойтись без автоматизированного.

  • Автоматизированное тестирование

    Используется, когда провести тестирование программно дешевле и быстрее, чем вручную. Подходит не всем проектам, мы оказываем такую услугу нашим самым крупным клиентам. Например, автоматизировали тестирование DMV Genie (в семейство входит 14 приложений). Автоматизация была необходимым шагом на этом проекте, чтобы снизить стоимость тестирования в дальнейшем.

    Цель: оптимизировать бюджет на тестирование и освободить время тестировщика для работы над более сложными кейсами.

  • Ручное тестирование

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

    Цель: получить полную картину о работоспособности продукта и вовремя отследить опасные места.

Для тестирования используем Test IT. Ведем там проекты: готовим тест-кейсы, выполняем прогоны и генерируем отчеты

03

Виды тестирования

Функциональное тестирование

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

  • Анализ документации и макетов

    Этап проходит перед стартом разработки. Изучаем документацию и требования, проводим техническое ревью макетов.

    Цель: найти ошибки в спроектированной логике до начала разработки и исправить их.

  • Исследователь­ское тестирование

    Тестирование без проектирования кейсов, на основе вводной информации по функциональности.

    Цель: оперативно протестировать продукт без документации.

  • Проектирование тест‑кейсов

    Составляем список тест‑кейсов по продукту. Они должны покрывать бизнес‑логику, переходные состояния, обработку ошибок.

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

  • Полное тестирование (full)

    Глубинное тестирование функциональности продукта. Может понадобиться, если был сделан рефакторинг проекта.

    Цель: прогон по всему проекту, по всем описанным кейсам.

  • Тестирование кейсов с высоким приоритетом

    Быстрый прогон по основной функциональности проекта после внесения изменений в код.

    Цель: убедиться, что все базовые функции работают и новые изменения ничего не сломали.

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

    Проверяем каждую платформу на отображение и корректный сбор аналитики и ивентов.

    Цель: быстро понять, в каком именно разделе приложение работает некорректно.

  • Тестирование баз данных

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

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

  • Pixel Perfect

    Pixel Perfect — особая техника верстки, при которой сверстанные экраны на 100% повторяют макет. Сравниваем скриншоты с реальных устройств с файлом в Figma и при мельчайших расхождениях бьем тревогу.

    Цель: добиться идеального совпадения макета и разработанного приложения.

Умеем тестировать даже на кассовой технике. На фото тестовые устройства для одного из проектов - канадской POS‑системы

Нефункциональное тестирование

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

  • Исследователь­ское тестирование

    Этот вид тестирования подойдет, если нет четко оформленных кейсов.

    Цель: как можно быстрее протестировать продукт на предмет работоспособности.

  • Перфоманс‑тесты

    Проверка приложения на стресс‑нагрузку.

    Цель: поиск предела, после которого приложение перестаёт нормально работать.

  • Проверка корректности текстов

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

    Цель: очистить приложение от обидно сделанных опечаток и туманных формулировок.

  • UI‑тестирование

    Ревью сборки, сравниваем макеты и фактическое состояние экранов.

    Цель: проверка сборки на разных устройствах на соответствие макетам.

В MobileUp большой парк устройств: больше 60 моделей старых и новых смартфонов для ловли багов

Статическое тестирование

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

  • API и дизайн

    Проверка продукта на соответствие документации API и дизайна.

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

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

    Наблюдение за работоспособностью сервера.

    Цель: убедиться что реализация API работает без ошибок.

  • Клиент / сервер

    Контроль корректного клиент‑серверного взаимодействия.

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

Умеем использовать техники тест‑дизайна. Обычно используем USE‑кейсы и граничные значения. Иногда диаграммы и mindmap

Регрессионное тестирование

Проверяем продукт после внесения изменений.

  • Проверка смежных областей

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

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

  • Проверка рабочих областей

    Проверяем основную функциональность, которая должна работать априори.

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

04

Инструменты

Современный стек

Мы используем актуальные языки и инструменты. Создаем собственные библиотеки: самая известная – Cicerone, была создана сотрудником MobileUp.

  • Ручное

    TestRail, Charles, Postman, Firebase Console, TablePlus, Android Studio, Xcode.

  • Автоматизированное

    Behave, Toolium, Selenium, Appium Язык — Python.

  • Hyperion

    Используем для тестирования приложений. Это отладочный инструмент, который позволяет заглянуть под капот к приложению и ускорить ручное тестирование.

При решении сложных задач наши тестировщики используют метод утёнка

05

Портфолио

Канадская POS‑система

2022

Многофункциональное приложение позволяет принимать заказы, организовать взаимодействие кассы-кухни-официантов, принимать платежи по банковским картам, печатать чеки, распределять заказы по столам, отправлять фискальный отчет в налоговую и видеть всю статистику в real time. Все это тестируем для нашего канадского заказчика прямо из Петербурга.

2022

Секретный необанк

2021

Делали функциональное, исследовательское, регрессионное тестирование, смоук‑тесты и тестирование локализации, пользовательского интерфейса и совместимости с ботом в Telegram. Показатель crash‑free приложения — 99,8. Это значит, что краши случаются менее, чем у 1% пользователей.

2021

РБК Инвестиции

2021

Экраны верстают один-в-один с макетами, в этом нет ничего удивительного, это отраслевой стандарт. Но есть особая техника верстки Pixel Perfect, которая позволяет буквально повторить макет с помощью верстки, вплоть до пикселя. На проекте РБК следили за тем, чтобы дизайн и сверстанные экраны были идентичны.

2021
06

Контроль качества

Тестирование — неотъемлемая часть процесса разработки

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

01

Отзывы

  • Я вам хочу сказать огромное спасибо за всю работу, которую вы сделали и продолжаете делать

    Никита КукушкинПомощь
  • Ребята не раз продемонстрировали гибкость и отличные навыки коммуникации

    Евгений ЛюбаевTutu.ru
  • Нам удалось повысить эффективность сервиса

    Тима СергеевYami Yami
02

Сотрудничество

Контакты

Мы всегда рады сотрудничеству и новым проектам.

Опишите задачу, и мы с вами свяжемся.
Или напишите в Телеграм.

Давайте знакомиться!

ВыбратьОткуда вы о нас узнали
  • Рейтинги
  • Рекомендации
  • Конференции
  • Публикации
  • Соцсети
  • Другое

Нажимая «Отправить», вы даете согласие на обработку персональных данных и соглашаетесь c политикой конфиденциальности

Ваша заявка успешно отправлена

Мы все изучим и скоро выйдем на связь