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-інженери у вашій команді
Наші тестувальники працюють у вашому процесі й вашому трекері з погодинною оплатою або як виділений інженер.
Пов'язані проєкти
Див. також: Розробка мобільних застосунків · Веброзробка · Підтримка мобільних застосунків · DevOps
Відгуки
Команда Revol і далі розширює можливості розробки клієнта завдяки якісній роботі та надійній підтримці. Вони ефективно комунікують і добре розуміють потреби та бізнес клієнта.
Tomas
Робота Revol повністю виправдала очікування, і клієнт залишився задоволений. Свіжий підхід і постійна готовність допомогти стали для нас справжньою цінністю. Якщо вам потрібна комунікабельна, клієнтоорієнтована команда для досягнення ваших цілей — сміливо звертайтеся до них.
Andrey
Часті запитання
Чи можете ви протестувати продукт, який створювали не ви?
Так. Ми починаємо з вимог або із самого продукту, якщо документації немає, і на цій основі пишемо тест-кейси. Перший результат — зазвичай перелік найсерйозніших проблем і план тестування для решти.
Чи надаєте ви тестувальників до нашої власної команди?
Так. QA-інженери можуть працювати у вашому процесі, вашому трекері й за вашим графіком релізів — так само, як наші розробники в моделі розширення команди.
Чи варто нам автоматизувати тести?
Лише там, де тести запускатимуться достатньо часто, щоб окупити витрати на їх написання й підтримку. Для довгоживучого продукту з частими релізами це зазвичай ключові сценарії та API. Для прототипу чи короткоживучої функції ручне тестування дешевше, і ми про це скажемо.
На яких пристроях ви тестуєте?
На реальних пристроях з iOS та Android, а також у симуляторах та емуляторах для ширшого покриття версій ОС і в основних десктопних і мобільних браузерах. Перелік пристроїв погоджуємо на старті, виходячи з того, що справді є у ваших користувачів.
Чи можете ви допомогти після відхилення в App Store чи Google Play?
Так. Ми читаємо відгук модерації, відтворюємо проблему, перевіряємо збірку на відповідність чинним правилам і точно кажемо розробникам, що змінити. Якщо застосунок розробляємо ми, то самі виправляємо його й подаємо повторно.
Як формується вартість тестування?
Це залежить від формату. Разова перевірка продукту чи релізу — зазвичай фіксований обсяг; постійне тестування оплачується погодинно або як робота виділеного інженера. Після огляду продукту ми пропонуємо формат і надсилаємо оцінку.
Розкажіть про свій проєкт
Опишіть задачу кількома рядками. Протягом одного робочого дня ми відповімо з запитаннями або першою оцінкою обсягу й вартості.
Зручніше написати листа чи зателефонувати?
welcome@revolsource.com
+38 097 662 23 20
Revol Software OÜ, Таллінн, Естонія. Наша команда розподілена по всьому світу.
Приєднуйтеся до нашої команди
Надсилайте резюме на career@revolsource.com