STLC та SDLC для тестувальника
Головна ідея
SDLC (Software Development Life Cycle) — весь процес розробки від ідеї до релізу.
STLC (Software Testing Life Cycle) — окремий цикл тестування, який живе всередині SDLC.
STLC — це не тільки фаза "Testing" в SDLC. QA бере участь з першої фази.
SDLC — фази та роль QA
| Фаза | Що відбувається | Роль QA |
|---|---|---|
| Planning | Цілі, бюджет, терміни, ресурси | Оцінює зусилля на тестування, визначає ризики |
| Requirements | Збір і документація вимог | Ревʼює вимоги, шукає суперечності та неточності |
| Design | Архітектура системи, вибір технологій | Аналізує testability — чи можна буде це протестувати |
| Implementation | Розробники пишуть код | Готує тестову документацію, налаштовує середовища |
| Testing | Виконання тестів | Виконує всі види тестування |
| Deployment | Реліз у продакшн | Smoke-тести на проді, підтвердження релізу |
| Maintenance | Підтримка після релізу | Регресія при патчах і оновленнях |
STLC — 6 фаз детально
1. Requirement Analysis
Паралельно з SDLC: Requirements
| Вхід | BRD / SRS документи, прототипи, зустрічі з BA |
| Вихід | RTM (Requirement Traceability Matrix), список питань |
QA вивчає вимоги, знаходить прогалини та суперечності. Задає питання «А що якщо...» ще до старту розробки.
2. Test Planning
Паралельно з SDLC: Design
| Вхід | RTM, вимоги, архітектурні рішення |
| Вихід | Test Plan: стратегія, типи тестів, ресурси, ризики, терміни |
Відповідає на питання: ЩО тестуємо, ЯК, КОМ, КОЛИ, якими інструментами, які ризики.
3. Test Case Development
Паралельно з SDLC: Implementation
| Вхід | Test Plan, RTM, вимоги, UI макети |
| Вихід | Тест-кейси, тест-сценарії, тестові дані |
Пишуться детальні тест-кейси з кроками, очікуваними результатами, тестовими даними. Ревʼюються командою.
4. Test Environment Setup
Паралельно з SDLC: Implementation
| Вхід | Test Plan, системні вимоги, DevOps конфіги |
| Вихід | Готове тестове середовище, smoke-тест пройдений |
Налаштування dev/staging/QA оточень, тестових баз даних, моків і стабів для зовнішніх сервісів.
5. Test Execution
Паралельно з SDLC: Testing
| Вхід | Тест-кейси, готове середовище, білд |
| Вихід | Виконані тест-кейси, заведені баги, test execution report |
Виконання тестів, логування результатів, реєстрація дефектів, ретестування після фіксів, регресія.
6. Test Cycle Closure
Паралельно з SDLC: Deployment
| Вхід | Всі виконані тести, звіти, список відкритих багів |
| Вихід | Test Summary Report, lessons learned, метрики якості |
Підведення підсумків: скільки тестів пройшло, скільки багів знайдено/закрито, рекомендація щодо релізу.
RTM — Requirement Traceability Matrix
RTM — таблиця, де кожна вимога пов'язана з тест-кейсами, що її перевіряють.
| Вимога ID | Опис вимоги | Тест-кейс ID | Статус |
|---|---|---|---|
| REQ-001 | Користувач може залогінитись | TC-001, TC-002 | ✅ Pass |
| REQ-002 | Валідація email | TC-003, TC-004 | ❌ Fail |
| REQ-003 | Відновлення пароля | TC-005 | ✅ Pass |
Навіщо потрібен: забезпечує повне покриття — жодна вимога не залишається без тестування.
Shift-Left підхід
Традиційно QA входив тільки на фазі Testing. Shift-Left зміщує цю точку входу на самий початок:
| Підхід | Коли QA долучається |
|---|---|
| Традиційно | Plan → Design → Dev → QA заходить тут → Test → Deploy |
| Shift-Left | QA заходить тут → Plan → Design → Dev → Test → Deploy |
Чому важливо: знайти баг у вимогах коштує в 100 разів дешевше, ніж після релізу.
STLC в Agile
В Agile STLC не лінійний — він повторюється кожен спринт:
- Спринт 1: Requirement Analysis → Test Planning → Test Case Development → Environment Setup → Test Execution → Test Cycle Closure
- Спринт 2: той самий цикл — але вже для нових фіч спринту
- Спринт N: той самий цикл + регресія попереднього функціоналу
Кожні 2 тижні — мініцикл планування, написання тестів, виконання і closure у вигляді sprint review.
Питання на співбесіді
«Чим відрізняється SDLC від STLC?»
SDLC охоплює весь процес розробки (планування, дизайн, код, тестування, реліз). STLC — це лише тестова частина зі своїми власними фазами, яка живе всередині SDLC.
«Коли QA входить у проєкт?»
З першої фази SDLC — Requirements. QA аналізує вимоги і знаходить дефекти ще до написання першого рядка коду (shift-left).
«Що таке RTM?»
Requirement Traceability Matrix — таблиця, де кожна вимога пов'язана з тест-кейсами. Забезпечує 100% покриття вимог тестами.
«Які артефакти створює QA на кожній фазі STLC?»
| Фаза | Артефакт |
|---|---|
| Requirement Analysis | RTM, список питань до вимог |
| Test Planning | Test Plan документ |
| Test Case Development | Тест-кейси, тест-дані |
| Environment Setup | Конфіги середовища, smoke-результати |
| Test Execution | Execution report, баг-репорти |
| Test Closure | Test Summary Report |