Бібліотека покриття

Що павук справді тестує.

Не перелік функцій, а реальні перевірки, що запускаються на продуктах, схожих на ваш. Кожна тема нижче постачається як автоматизований набір: UI-сценарії в справжньому браузері, контракти щодо API, повторний запуск після кожного деплою.

Дві глибини покриття

Почніть з поверхні. Йдіть настільки глибоко, наскільки нам довіряєте.

Поверхневе покриття

Старт за кілька хвилин · доступ не потрібен

Усе, до чого може дістатися публіка

Сторінки, форми, користувацькі сценарії та публічні API — тестуються ззовні, саме так, як їх бачить відвідувач (або зловмисник). Починається лише з URL.

  • Обхід усього сайту та карта сценаріїв
  • Smoke- і регресійні набори
  • Перевірки стану публічного API

Глибоке покриття

Доступ до staging · налаштовуємо разом із вами

Всередині продукту, з доступом, який ви надаєте

Ми підключаємося до вашого проєкту як слід: облікові дані staging, тестові акаунти і, якщо ви захочете, репозиторій лише для читання. Так ми дістаємося до того, чого поверхневе тестування не бачить.

  • Сценарії після входу та за ролями
  • Контрактні тести REST / GraphQL
  • Цілісність даних після змін
  • Покриття, прив’язане до ваших реальних маршрутів і репозиторіїв

Бібліотека

Кожна тема постачається як набір тестів.

Автентифікація й сесії

Сценарії, які зачиняють користувачів, коли ламаються, і ті, які зловмисники пробують першими. Павук проходить справжні входи з тестовими акаунтами й перевіряє кожен невдалий шлях.

  • Реєстрація з валідною, вже використаною та некоректною поштою
  • Вхід, вихід, завершення сесії та її оновлення
  • Скидання пароля від початку до кінця, включно з посиланням у листі
  • Повернення на потрібну сторінку після входу
  • Обмеження частоти запитів і тексти помилок при повторних невдачах

Оформлення замовлення й платежі

Сценарії, що приносять дохід, отримують найглибше покриття. Sandbox-картки, відхилені платежі, покинуті кошики — тестується на staging, ніколи на справжніх грошах.

  • Додати в кошик → checkout → sandbox-платіж → підтвердження
  • Відхилена картка, прострочена картка й шляхи з 3DS
  • Ціни, податки й підсумки узгоджені між сторінками та API
  • Купони, порожні кошики та крайні випадки кількості
  • Лист із підтвердженням замовлення та доставка вебхука

API-контракти — REST і GraphQL

Більшість регресій потрапляє в бекенд і проявляється пізніше. Контрактні перевірки ловлять їх за секунди, ще до того, як завантажиться будь-який UI-тест.

  • Форма відповіді та коди статусів для кожного публічного ендпоінта
  • Межі авторизації: прострочені токени, відсутні scope, дані інших користувачів
  • Тіла помилок лишаються машиночитними (без HTML у JSON API)
  • Пагінація, фільтрація й сортування працюють на реальних обсягах даних
  • Виявлення несумісних змін щодо попереднього контракту

Форми й валідація

Кожна форма — це контракт із вашими користувачами. Павук заповнює їх як людина в поспіху: неправильно, порожньо, вставленим текстом і з подвійним надсиланням.

  • Валідація обов’язкових полів і формату, на клієнті й на сервері
  • Захист від подвійного надсилання та стани завантаження
  • Unicode, емодзі та дуже довгі значення
  • Повідомлення про помилки вказують на справді проблемне поле
  • Стани успіху, редиректи та сповіщення після надсилання

Ролі й права доступу

Баги, яких ніхто не помічає, доки клієнт не побачить дані іншого клієнта. Перевірки за ролями виконуються від імені різних користувачів щодо одних і тих самих ресурсів.

  • Глядач / редактор / адмін бачать рівно те, що мають
  • Прямий доступ за URL до закритих сторінок заборонено
  • Об’єкти API, що належать іншим акаунтам, недоступні
  • Користувачі зі зниженою роллю одразу втрачають доступ

Файли й завантаження

Завантаження ламаються винахідливо. Павук приносить цілий зоопарк файлів.

  • Підтримувані формати завантажуються, відображаються й скачуються без втрат
  • Завеликі та порожні файли відхиляються з зрозумілим повідомленням
  • Неправильні розширення та невідповідність MIME відхиляються
  • Прогрес, скасування й повтор працюють за повільної мережі

Web3 і смартконтракти

dApp ламаються так, як класичні набори ніколи не бачать, — коли UI тихо розходиться з блокчейном. Павук тестує обидва боки мосту з емульованими гаманцями й без справжніх коштів.

  • Підключення гаманця, перемикання мережі та підпис — включно зі шляхами відмови
  • Виклики контрактів у testnet і форкнутому mainnet: стан, revert, події
  • Відображені баланси та позиції збігаються з реальним станом у блокчейні
  • Збої оцінки газу та стани UI для транзакцій у процесі
  • Узгодженість індексатора / subgraph із подіями блокчейну

Smoke-перевірка продуктивності

Не навантажувальний тест, а сигналізація. Павук відстежує час відповіді для кожної сторінки й ендпоінта та позначає регресії щодо базового рівня.

  • Базові значення часу завантаження сторінок і затримки API за маршрутами
  • Помилки в консолі та невдалі мережеві запити на кожній сторінці
  • Регресії розміру даних (випадковий бандл на 4 МБ)
  • Збої сторонніх сервісів виявляються й виключаються з вашої оцінки

Web2 + Web3

dApp і смартконтракти — теж наша територія.

Блокчейн-продукти ламаються так, як класичні набори тестів ніколи не бачать. Павук говорить обома мовами — той самий цикл, той самий трекер, ті самі гарантії.

Сценарії з гаманцями

Підключення, перемикання мережі, підпис транзакцій — і шляхи відмови, на які користувачі справді натрапляють. Тестується з емульованими гаманцями, без ризику для справжніх коштів.

Смартконтракти

Виклики контрактів перевіряються в testnet і форкнутому mainnet: зміни стану, revert, збої оцінки газу та випуск подій.

UI ↔ істина в блокчейні

Класичний баг dApp — UI, що розходиться з блокчейном. Павук звіряє відображені баланси, позиції та історію з реальним станом блокчейну.

Від червоного тесту до заведеного тікета

Баг описує себе сам. Вашій команді лишається виправити.

Дорога частина QA — не знайти баг, а описати його, шукати скриншот і доводити до розробника. QA Spider закриває цей цикл сам.

  1. 01

    Тест став червоним — баг уже описано

    Нікому не треба відтворювати його, робити скриншот чи писати опис. Звіт складається в момент падіння тесту, з того, що справді сталося під час запуску.

    Кроки відтворення будуються з виконаних кроків · скриншот збою додається · серйозність P0–P3

  2. 02

    Він потрапляє у ваш трекер, а не в таблицю

    Один клік заводить його там, де вже працюють ваші розробники, — як повноцінний тікет у вашому проєкті, з відтворенням і доказами.

    Jira · Azure DevOps · ClickUp · GitHub Issues · Linear — перевірка на дублікати перед створенням

  3. 03

    Потрібні люди дізнаються одразу

    Невдалий запуск або новий баг з’являється в чаті команди з посиланням просто на тікет. Нікому не треба стежити за дашбордом, щоб дізнатися, що щось зламалося.

    Slack · Discord · Telegram — при невдалих запусках і заведених багах, тиша, коли все зелено

  4. 04

    Нічого не гниє непомітно

    Кожен баг має статус, доки його справді не закрито, тож «це вже виправили» — факт, який можна перевірити, а не спогад.

    Відкрито → у роботі → виправлено → перевірено · фільтр за проєктом, серйозністю й статусом · скриншот зберігається разом із багом

Працює за вашим розкладом, кілька разів на день

Оберіть важливі години — перед стендапом, після кожного деплою, вночі. Набір запускається сам, а ви читаєте результат, а не календар.

Видно, чи рухається якість

Частка пройдених, нестабільність і відкриті баги за серйозністю в одному вигляді — цифри для рішення про реліз, а не стіна логів.

Як виглядає знайдений баг

Як виглядає знайдений баг

Не червоний рядок у лозі, а повний відтворюваний тікет із першопричиною та запропонованим виправленням, плюс запуски, що його дали. Ось справжній приклад того, що потрапляє у ваш трекер.

QA-1042Відкрито · Високазаведено в Jira · QA Spider

Заголовок

Checkout: прострочений промокод показує «застосовано» і списує повну ціну

Опис

На /checkout застосування простроченого промокоду показує «Код застосовано ✓» і списує повну суму. Знижки немає і помилки не показано — клієнта мовчки переплачують.

Кроки відтворення · КВ

  1. Додайте будь-який товар у кошик і відкрийте /checkout
  2. Введіть промокод SUMMER24 (прострочений) і натисніть Застосувати
  3. Оплатіть тестовою карткою 4242 4242 4242 4242

Фактичний результат · ФР

Показано бейдж «Код застосовано ✓» · сума замовлення не змінилася · списано повну суму · повідомлення про помилку немає.
Розгорнути повний тікет — очікуваний результат, першопричина, виправлення та скриншот

Очікуваний результат · ОР

Вбудована помилка «Термін дії цього коду минув.» · Застосувати лишається неактивним · оплата заблокована, доки не вирішено.

Першопричина

Клієнт довіряє POST /api/promo, що повертає 200 { valid: true, discount: 0 } для прострочених кодів, замість того щоб їх відхиляти.

Запропоноване виправлення

Повертайте 422 code_expired з /api/promo, показуйте повідомлення на місці й тримайте кнопку Оплатити неактивною, поки код недійсний.

Скриншот · трасування додано

/checkout
Код застосовано
⚠ сума не змінилася — $149.00

Останні запуски

ПроєктСередовищеРезультатЧас
c(ім’я клієнта приховано)prodпройдено214✓ 0✗ 0⚡2m 14s
c(ім’я клієнта приховано)stagingбаг заведено208✓ 1✗ 0⚡3m 02s
p(ім’я клієнта приховано)devнестабільність вилікувано176✓ 0✗ 2⚡4m 09s
g(ім’я клієнта приховано)prodпройдено88✓ 0✗ 0⚡1m 47s

Кожен деплой · щоночі · на вимогу

Кожен баг приходить саме так — без дублікатів, відтворюваний, з першопричиною та запропонованим виправленням — просто в трекер, яким ваша команда вже користується. Розробникам лишається просто виправити.

Знайомтеся: Helper

Не просто краулер, а QA-копілот у вашому робочому процесі.

Поруч з автономним павуком Helper бере історію з вашого трекера, перевіряє її на вашому робочому застосунку критерій за критерієм і пише довкола неї QA-документацію: плани, кейси, чеклісти, звіти про баги. Ви переглядаєте й схвалюєте; ніщо не торкається середовища, схожого на production, без вашої згоди.

01

Починає з вашого тікета

Вставте посилання на Jira чи Azure DevOps, і Helper підтягне історію та її критерії приймання. Без копіювання й передруковування того, що вже сказано в тікеті.

02

Відповідає на питання «чи воно справді працює?»

Кожен критерій приймання стає справжнім тестом і запускається на вашому робочому застосунку — ви отримуєте «пройдено» чи «провалено» за кожним критерієм, а не думку. Середовища, схожі на production, запитують дозвіл.

03

Пише QA-документацію

Тест-плани, тест-кейси, smoke-історії, регресійні чеклісти, огляди крайніх випадків і звіти про баги — прив’язані до вашого продукту, з експортом у Markdown, CSV або Excel для TestRail, Xray чи Zephyr.

04

Зберігає те, що виявилося корисним

Історію, яку ви один раз протестували, можна зберегти в проєкті як кероване автоматизоване тестування — і завтра вона запускатиметься за розкладом разом з рештою набору.

Тікет на вході · тестування на вашому робочому застосунку · документи на виході · збереження в набір

Спробувати Helper →

Хочете такий перелік, але для вашого продукту?

Тестування після кожного деплою — це тариф Enterprise: розкажіть, що ви випускаєте, і ми налаштуємо набір разом із вами. Або почніть із безкоштовного аудиту публічних сторінок.

Що покриває QA Spider — приклади тестового покриття