Test Scenario

Test Scenario — це високорівневий опис того, що саме потрібно перевірити в системі, без детального розпису кроків. Простими словами: Test Scenario відповідає на питання «ЩО тестуємо?», а не «ЯК саме тестуємо».

Основні характеристики Test Scenario

  • Описує функціональність або бізнес-процес
  • Формулюється коротко і зрозуміло
  • Покриває один логічний потік або ціль користувача
  • Може включати кілька Test Case

Приклад

Test Scenario:

Перевірка авторизації користувача

Цей сценарій може включати такі Test Case:

  • Вхід з валідними даними
  • Вхід з невалідним паролем
  • Вхід з порожнім логіном
  • Вхід після блокування акаунта

Ще приклади Test Scenario

  • Реєстрація нового користувача
  • Оформлення замовлення в інтернет-магазині
  • Відновлення паролю
  • Додавання товару до кошика
  • Оплата банківською карткою

Різниця між Test Scenario і Test Case

Test ScenarioTest Case
Високий рівеньДетальний рівень
Що тестуємоЯк тестуємо
Короткий описПокрокова інструкція

Навіщо потрібні Test Scenario

  • Допомагають швидко покрити основні функції
  • Полегшують планування тестування
  • Корисні для оцінки обсягу робіт
  • Зрозумілі бізнесу і тестувальникам

Entry Criteria та Exit Criteria

Entry Criteria та Exit Criteria — це набір умов (критеріїв), які визначають:

  • коли можна починати тестування (Entry Criteria)
  • коли тестування можна вважати завершеним (Exit Criteria)

Вони допомагають контролювати якість, ризики та готовність продукту на різних етапах тестування.

Entry Criteria (Критерії входу)

Визначення

Entry Criteria — це умови, які повинні бути виконані перед початком тестування конкретного етапу або виду тестування.

Якщо Entry Criteria не виконані — тестування не повинно починатися, оскільки результати будуть ненадійними.

Навіщо потрібні Entry Criteria

  • Запобігають початку тестування «сирого» продукту
  • Зменшують кількість блокуючих дефектів
  • Економлять час команди
  • Допомагають планувати ресурси

Типові приклади Entry Criteria

Для Functional Testing:

  • Вимоги затверджені та стабільні
  • Доступна тестова документація (Test Plan, Test Scenarios, Test Cases)
  • Збірка (build) успішно задеплоєна в тестове середовище
  • Тестове середовище налаштоване
  • Тестові дані підготовлені
  • Немає критичних блокуючих дефектів з попередньої фази

Для Regression Testing:

  • Виправлення дефектів доставлені в новому білді
  • Smoke / Sanity тестування пройдено
  • Визначений обсяг регресії

Exit Criteria (Критерії виходу)

Визначення

Exit Criteria — це умови, які повинні бути виконані для завершення тестування або переходу до наступної фази.

Вони визначають момент, коли продукт вважається достатньо протестованим.

Навіщо потрібні Exit Criteria

  • Дають об’єктивну відповідь: «Чи готовий продукт?»
  • Захищають QA від передчасного релізу
  • Допомагають приймати release-рішення
  • Забезпечують прозорість для бізнесу

Типові приклади Exit Criteria

  • Виконано 100% запланованих тестів
  • 0 критичних (Blocker / Critical) дефектів
  • Всі High-дефекти або виправлені, або прийняті бізнесом
  • Відсоток успішних тестів ≥ 95%
  • Регресійне тестування завершено
  • Всі відомі ризики задокументовані
  • Тест-звіт підготовлений і затверджений

Приклад у контексті проєкту

Entry Criteria для System Testing:

  • Бізнес-вимоги затверджені
  • Код завершений і переданий у QA
  • Smoke тестування пройдено
  • Тестове середовище готове

Exit Criteria для System Testing:

  • Усі тест-кейси виконані
  • Немає дефектів рівня Critical
  • High-дефекти мають прийнятні workaround
  • Продукт готовий до UAT

Entry vs Exit Criteria (порівняння)

КритерійEntry CriteriaExit Criteria
ПризначенняКоли починати тестуванняКоли завершувати тестування
ЧасДо початку фазиПісля завершення фази
ФокусГотовність до тестуванняЯкість продукту
Захищає відПередчасного стартуПередчасного релізу

Де фіксуються Entry / Exit Criteria

Найчастіше вони описуються в:

  • Test Plan
  • Test Strategy
  • Definition of Ready (DoR) — Entry
  • Definition of Done (DoD) — Exit
  • Процедурах якості (QA Process)

В Agile / Scrum

Entry Criteria ≈ Definition of Ready

  • User Story описана
  • Є acceptance criteria
  • Немає відкритих питань

Exit Criteria ≈ Definition of Done

  • Код завершено
  • Тести пройдені
  • Дефекти закриті
  • Функціонал готовий до релізу

Типові помилки

  • Починати тестування без готових вимог
  • Відсутність чітких Exit Criteria
  • Ігнорування серйозних дефектів перед релізом
  • Формальні критерії без реального контролю

Короткий підсумок

Entry Criteria визначають, коли тестування можна починати, а Exit Criteria — коли його можна безпечно завершувати.

Test Environment Plan (План тестового середовища)

У процесі тестування програмного забезпечення середовище відіграє не менш важливу роль, ніж тест-кейси чи самі тестові сценарії. Навіть ідеально написані тести не дадуть коректних результатів, якщо тестове середовище нестабільне, некоректно налаштоване або відрізняється від очікуваного. Саме тому Test Environment Plan є критично важливим документом у процесі тестування.

Що таке Test Environment Plan?

Test Environment Plan — це документ, який детально описує всі технічні та організаційні аспекти середовища, у якому проводиться тестування. Він відповідає на ключові питання:

  • де саме проводиться тестування;
  • які компоненти використовуються;
  • як налаштовується середовище;
  • хто несе відповідальність за його підтримку.

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

Основні цілі Test Environment Plan

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

Ключові складові Test Environment Plan

1.Типи середовищ

Опис усіх середовищ, які використовуються в проєкті:

  • Development — для локального тестування розробниками
  • QA / Test — основне середовище для функціонального та регресійного тестування
  • Staging / Pre-production — максимально наближене до продакшну
  • Production — описується для розуміння відмінностей (без тестування)

2.Апаратне забезпечення

  • сервери (on-premise або cloud)
  • мобільні пристрої, емулятори, симулятори
  • вимоги до пам’яті, процесорів, мережі

3.Програмне забезпечення

  • операційні системи
  • браузери та їх версії
  • версії застосунків
  • бази даних, middleware, сторонні бібліотеки

4.Конфігурації середовища

  • змінні середовища
  • feature flags
  • параметри логування
  • інтеграції з іншими системами

5.Тестові дані

  • типи тестових даних (статичні, динамічні, анонімізовані)
  • джерела даних
  • правила оновлення та очищення
  • відповідність вимогам безпеки та GDPR

6.Доступи та ролі

  • користувацькі ролі
  • рівні доступу
  • процес отримання доступів
  • відповідальні особи

7.Залежності

  • зовнішні API
  • сторонні сервіси
  • мок-сервіси та стабінги

8.Ризики та обмеження

  • нестабільність середовища
  • обмежені ресурси
  • залежність від інших команд
  • план дій у разі проблем

9.Підтримка та комунікація

  • хто відповідає за підтримку середовища
  • як і куди репортити проблеми
  • SLA та час реагування

Переваги наявності Test Environment Plan

  • швидше стартує тестування
  • легше відтворювати дефекти
  • зменшується кількість блокерів
  • покращується взаємодія між командами
  • спрощується онбординг нових спеціалістів

Підсумки

Test Environment Plan — це не просто формальний документ, а стратегічний інструмент, який напряму впливає на якість продукту та ефективність тестування. Інвестуючи час у його створення, команда економить значно більше часу в майбутньому.

Test Schedule

Test Schedule (графік тестування) — це частина процесу тестування програмного забезпечення, яка визначає терміни, етапи та послідовність виконання тестових робіт.

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

Мета Test Schedule

  • Забезпечити організованість і контроль процесу тестування.
  • Допомогти управляти ресурсами (часом, людьми, середовищем).
  • Дати змогу відслідковувати прогрес і своєчасно виявляти затримки.
  • Узгодити тестування з графіком розробки (Dev/Test/Release календарем).

Основні елементи Test Schedule

  1. Етапи тестування (Phases)
    • Наприклад:
      • Підготовка тестового середовища
      • Розробка тест-кейсів
      • Виконання тестів
      • Регресійне тестування
      • Звітність і завершення тестування
  2. Терміни виконання (Timeline / Duration)
    • Початкова та кінцева дата кожного етапу.
    • Орієнтовна тривалість (у днях або тижнях).
  3. Відповідальні особи (Assigned Resources)
    • Хто виконує певні завдання (QA Engineer, Automation QA, Test Lead).
  4. Залежності (Dependencies)
    • Від яких подій чи завдань залежить початок або завершення етапу
      (наприклад, “System Test починається після завершення інтеграційного тестування”).
  5. Контрольні точки (Milestones)
    • Ключові дати: готовність середовища, завершення тест-кейсів, початок регресії, реліз.
  6. Ризики затримок
    • Потенційні причини відставання від графіка та способи реагування.

Приклад спрощеного Test Schedule

ЕтапПочатокКінецьВідповідальнийКоментар
Підготовка тестового середовища04.11.202506.11.2025DevOps, QA LeadСтворення staging середовища
Розробка тест-кейсів05.11.202510.11.2025QA Team80% покриття функціоналу
Виконання тестів11.11.202520.11.2025QA EngineersОсновне функціональне тестування
Регресійне тестування21.11.202524.11.2025Automation QAПеред релізом
Звітність і аналіз25.11.202526.11.2025QA LeadTest Summary Report

Важливо розуміти, що:

  • Test Schedule часто є частиною Test Plan, але може існувати і як окремий документ або артефакт (наприклад, у вигляді діаграми Ганта чи календаря в Jira).
  • Регулярне оновлення графіка допомагає команді бачити реальний стан тестування й оперативно реагувати на зміни.

Test Plan

Test Plan (тест-план) — це документ, який описує конкретний план дій з тестування програмного забезпечення: що саме буде протестовано, коли, ким і яким чином.

Іншими словами, якщо Test Strategy визначає загальний підхід до тестування, то Test Plan — це його практична реалізація для конкретного проєкту, релізу або функціоналу.

Мета Test Plan

Забезпечити чітке розуміння:

  • які об’єкти тестування (системи, модулі, фічі) будуть перевірятися;
  • як, коли і ким буде виконано тестування;
  • які ресурси та інструменти необхідні;
  • які ризики, залежності й обмеження існують.

Основні елементи Test Plan

  1. Ідентифікація документа
    • Назва, версія, автор, дата створення, затвердження.
  2. Мета тестування
    • Чому проводиться тестування, які цілі необхідно досягти.
  3. Об’єкти тестування (Test Items)
    • Що саме тестується: модулі, API, мобільний застосунок, вебсайт тощо.
  4. Функціонал, що підлягає тестуванню / не тестується
    • Scope (що входить) і Out of scope (що виключено).
  5. Підхід (Approach)
    • Які типи тестування будуть виконуватися: функціональне, регресійне, автоматизоване, тощо.
  6. Критерії входу та виходу (Entry/Exit Criteria)
    • Умови, коли можна починати тестування, і коли вважати його завершеним.
  7. План виконання (Schedule / Timeline)
    • Етапи тестування, спринти, релізи, дедлайни.
  8. Ролі та відповідальність
    • Хто відповідає за різні аспекти тестування (QA Lead, QA Engineer, DevOps, PM тощо).
  9. Ресурси та середовище
    • Яке тестове середовище, обладнання, інструменти та дані будуть використані.
  10. Ризики та пом’якшення
    • Можливі проблеми, які можуть вплинути на тестування, і способи їх уникнення.
  11. Критерії успіху
    • Як визначається, що тестування пройшло успішно.
  12. Додаткові розділи
    • Метрики, звітність, управління дефектами, залежності від інших команд.

Відмінність між Test Plan і Test Strategy

ПараметрTest StrategyTest Plan
РівеньВисокий (організаційний / загальний)Конкретний (для продукту, релізу чи функції)
МетаВизначає принципи і підхідОписує конкретні дії
ЗміниРідко оновлюєтьсяОновлюється часто
Орієнтація“Як ми тестуємо?”“Що, коли і хто тестує?”

Спрощено:

Test Plan — це “дорожня карта” тестування для певного релізу чи продукту.