Тестирование и QA программного обеспечения
Ручное и автоматизированное тестирование продуктов для iOS, Android и веба — внутри проекта, который разрабатываем мы, или как независимая проверка продукта, созданного другой командой. Вы получаете воспроизводимые баг-репорты и ясную картину того, что может пойти не так при релизе.
Когда вам нужна QA-команда
Тестирование окупается, когда ошибка в рабочей версии обходится дороже, чем её раннее обнаружение. Вот ситуации, о которых мы слышим чаще всего.
- Пользователи сообщают об ошибках, которых ваша команда никогда не видела
- Каждый релиз ломает что-то, что раньше работало
- Разработчики тестируют собственный код, и больше его никто не проверяет
- Модерация App Store или Google Play отклонила вашу сборку
- Вы готовитесь к запуску и хотите сначала получить взгляд со стороны
- Продукт тормозит или падает при росте трафика
Что мы тестируем
Ручное тестирование
QA-инженеры шаг за шагом проходят продукт по требованиям и тест-кейсам на реальных устройствах и в браузерах. А ещё исследуют области, которые пока не покрыты ни одним тест-кейсом, — так, как это сделал бы новый пользователь.
Автоматизация тестирования
Мы автоматизируем проверки, которые должны проходить на каждой сборке: регистрацию, платежи, другие ключевые сценарии и API. Набор тестов запускается в вашем CI/CD-пайплайне и сигнализирует о сбоях до выхода релиза.
Нагрузочное тестирование
Измеряем время отклика и пропускную способность под нагрузкой и находим точку, в которой продукт начинает сбоить. В отчёте узкие места перечислены в том порядке, в котором их стоит устранять.
Тестирование безопасности
Проверяем, как продукт хранит и передаёт данные, как устроены вход и права доступа, что открывают код и сторонние библиотеки. Каждая находка сопровождается оценкой риска и рекомендацией по исправлению.
Мобильные устройства и сторы
Тестирование на реальных устройствах iOS и Android, а не только на симуляторах, на тех версиях ОС, которые действительно стоят у ваших пользователей. Также проверяем сборки на соответствие правилам App Store и Google Play, чтобы их не отклонили на модерации.
Тестирование API и интеграций
Ваш бэкенд, платёжные провайдеры и сторонние сервисы тестируются вместе, включая сценарии сбоев: таймауты, отклонённые платежи, неполные данные. Именно отсюда обычно начинаются инциденты в рабочей версии.
Тестирование параллельно с разработкой
Тестирование, которое начинается после разработки, находит проблемы тогда, когда их исправление обходится дороже всего. В наших проектах QA-инженер подключается на этапе требований, пишет тест-кейсы, пока функции ещё разрабатываются, и проверяет каждую сборку спринта, а не только финальную. К дню релиза команда уже знает, где слабые места. Тот же подход работает, когда наши тестировщики присоединяются к вашей команде.
- Требования проверяются на пробелы до написания кода
- Тест-кейсы готовы к моменту, когда готова функция
- Проверяется каждая сборка спринта, а не только релиз-кандидат
- Регрессионное тестирование перед каждым релизом
Ручное или автоматизированное тестирование?
Ручное тестирование даёт суждение: человек замечает, что сценарий технически корректен, но пользоваться им на практике невозможно. Автоматизация даёт повторяемость: те же сто проверок после каждого коммита, ночью, без усталости. Небольшие проекты и недолговечные функции редко окупают написание автотестов, и мы говорим об этом, а не продаём их. Долгоживущие продукты с частыми релизами окупают их быстро, поэтому большинство зрелых продуктов в итоге используют оба подхода.
- Вручную: новые функции, удобство использования и продукты, которые меняются каждую неделю
- Вручную: исследовательское тестирование неясных или рискованных областей
- Автоматически: ключевые сценарии, которые никогда не должны ломаться, проверка на каждой сборке
- Автоматически: регрессионные наборы для продуктов с частыми релизами
- Оба подхода: автоматизация для стабильного ядра, люди для всего нового
Что вы получаете
Всё, что мы создаём, остаётся в проекте, поэтому следующий тестировщик — наш или ваш — не начинает с нуля. Ошибка, которую нельзя воспроизвести, — это не находка, и мы не выдаём её за таковую. Каждый релиз завершается коротким отчётом о том, что протестировано и какие риски остаются, так что решение о выпуске принимаете вы — и принимаете осознанно.
- Тест-кейсы и чек-листы хранятся в вашем трекере или репозитории
- Баг-репорты с шагами, окружением, ожидаемым и фактическим результатом
- Отчёт о релизе: что покрыто и какие риски остаются
- Набор автотестов с инструкцией по запуску, если автоматизация была согласована
Как устроено тестирование
Изучение продукта
Изучаем требования или сам продукт, если документации нет, и договариваемся, какие платформы, устройства и сценарии важнее всего. Вы получаете объём и план тестирования.
Тест-кейсы
Пишем тест-кейсы и чек-листы для согласованного объёма. Они хранятся в ваших инструментах и остаются в проекте.
Тестирование сборок
Каждая сборка тестируется на реальных устройствах и в целевых браузерах. Ошибки попадают в ваш трекер со всем, что нужно для их воспроизведения.
Автоматизация там, где она окупается
Для сценариев, которые проверяются на каждой сборке, пишем автотесты и подключаем их к вашему CI-пайплайну. Результаты вы видите при каждом коммите.
Отчёт о релизе
Перед каждым релизом вы получаете сводку: что протестировано, что исправлено и какие риски остаются.
Платформы и инструменты
Платформы
- iOS
- Android
- Веб-браузеры
- REST API
Автоматизация
- Playwright
- Selenium
- Appium
- XCUITest
- Espresso
- Postman
Производительность и безопасность
- Apache JMeter
- k6
- OWASP ZAP
Рабочий процесс
- Jira
- TestFlight
- Тестовые треки Google Play
- Firebase Crashlytics
Форматы работы
QA в проекте, который разрабатываем мы
Тестировщик входит в команду с первого спринта, и тестирование планируется вместе с разработкой.
Тестирование продукта, созданного другими
Проверка существующего продукта или конкретного релиза в фиксированном объёме: тест-кейсы, баг-репорты и письменная оценка его состояния.
QA-инженеры в вашей команде
Наши тестировщики работают в вашем процессе и вашем трекере, с почасовой оплатой или как выделенный инженер.
Проекты по теме
Отзывы
Команда Revol продолжает укреплять возможности клиента в разработке благодаря качественной работе и надёжной поддержке. Они эффективно коммуницируют и хорошо понимают потребности и бизнес клиента.
Tomas
Работа Revol полностью оправдала ожидания и устроила клиента. Свежий подход и готовность всегда быть на связи для поддержки стали ценным преимуществом. Если нужна открытая, клиентоориентированная команда для достижения целей — Revol отличный выбор.
Andrey
Частые вопросы
Можете ли вы протестировать продукт, который создавали не вы?
Да. Мы начинаем с требований или с самого продукта, если документации нет, и на этой основе пишем тест-кейсы. Первым результатом обычно становится список самых серьёзных проблем и план тестирования для остального.
Вы предоставляете тестировщиков в нашу команду?
Да. QA-инженеры могут работать внутри вашего процесса, вашего трекера и вашего графика релизов — так же, как наши разработчики при расширении команды.
Стоит ли нам автоматизировать тесты?
Только там, где тесты будут запускаться достаточно часто, чтобы окупить затраты на их написание и поддержку. Для долгоживущего продукта с частыми релизами это обычно ключевые сценарии и API. Для прототипа или недолговечной функции ручное тестирование дешевле, и мы так и скажем.
На каких устройствах вы тестируете?
На реальных устройствах iOS и Android, а также на симуляторах и эмуляторах для более широкого охвата версий ОС и в основных десктопных и мобильных браузерах. Список устройств согласуется в начале — исходя из того, что действительно есть у ваших пользователей.
Можете ли вы помочь после отказа App Store или Google Play?
Да. Мы читаем замечания модерации, воспроизводим проблему, проверяем сборку на соответствие актуальным правилам и говорим разработчикам, что именно нужно изменить. Если приложение разрабатываем мы, то сами исправляем его и отправляем повторно.
Как формируется стоимость тестирования?
Зависит от формата. Разовая проверка продукта или релиза обычно выполняется в фиксированном объёме; постоянное тестирование оплачивается почасово или как выделенный инженер. Изучив продукт, мы предлагаем формат и присылаем оценку.
Расскажите о своём проекте
Опишите задачу в нескольких строках. В течение одного рабочего дня мы ответим вопросами или первым мнением об объёме работ и стоимости.
Удобнее написать на почту или созвониться?
welcome@revolsource.com
+38 097 662 23 20
Revol Software OÜ, Таллин, Эстония. Наша команда распределена по всему миру.
Присоединяйтесь к нашей команде
Присылайте резюме на career@revolsource.com