Современная разработка программного обеспечения невозможна без системного подхода к качеству. По мере усложнения продуктов, роста требований пользователей и ускорения релизов интуитивное или стихийное тестирование перестало быть эффективным.
Жизненный цикл тестирования программного обеспечения (STLC) возник как ответ на эту сложность — как инженерная модель, позволяющая управлять качеством, рисками и надёжностью продукта на протяжении всего процесса разработки. STLC помогает превратить тестирование из разрозненного набора проверок в контролируемый и воспроизводимый процесс, встроенный в общую систему разработки программного обеспечения.
Жизненный цикл тестирования ПО STLC (Software Testing Life Cycle) — это структурированный процесс тестирования программного обеспечения, состоящий из последовательных этапов, правил их выполнения и набора артефактов, используемых для планирования, проведения и оценки качества продукта.
Содержание
- Связь SDLC → STLC
- Связь STLC и CI/CD
- Этапы STLC: полная структура
- 1. Test Planning — планирование тестирования
- 2. Test Monitoring & Control — мониторинг и управление тестированием
- 3. Test Analysis — анализ тестируемой системы
- 4. Test Design — проектирование тестов
- 5. Test Implementation — подготовка среды и реализация тестов
- 6. Test Execution — выполнение тестов
- 7. Test Completion — завершение тестирования
- Практический кейс: как STLC снижает затраты и повышает качество
- Как STLC работает в Agile и Waterfall
- КОМПАКТНЫЕ ЧЕК-ЛИСТЫ STLC
- 1. Test Planning — Планирование
- 2. Test Analysis — Анализ
- 3. Test Design — Проектирование тестов
- 4. Test Implementation — Подготовка среды
- 5. Test Execution — Выполнение тестов
- 6. Test Completion — Завершение
- Модель ETVX: формализация этапов STLC
- Метрики, которые используют в STLC для оценки качества
- Как внедрить STLC в проекте: пошаговая инструкция
- Типичные ошибки новичков на этапах STLC (топ-5)
- Вопросы и ответы по STLC
- Вывод

Связь SDLC → STLC
Любое программное обеспечение проходит жизненный цикл разработки — от идеи и требований до релиза и поддержки. Этот процесс описывается моделью SDLC (Software Development Life Cycle), которая определяет этапы создания продукта.
Однако сам факт разработки ещё не гарантирует качества. Чтобы убедиться, что система работает корректно, соответствует требованиям и готова к использованию, применяется отдельный жизненный цикл тестирования — STLC (Software Testing Life Cycle).
STLC не существует изолированно: он встроен в SDLC и сопровождает продукт на всех этапах — от анализа требований до принятия решения о релизе. Понимание связи между SDLC и STLC позволяет тестировщику осознанно управлять качеством, рисками и процессом тестирования, а не просто «проверять готовый код».
Связь STLC и CI/CD
CI/CD — это подход, при котором изменения в коде постоянно добавляются в проект, автоматически проверяются и быстро доходят до пользователей. В такой модели разработка идёт небольшими шагами, а релизы происходят часто.
В этих условиях STLC не исчезает, а встраивается в CI/CD. Анализ требований, проектирование тестов и сами проверки выполняются не один раз в конце, а постоянно, при каждом изменении кода. Часть тестов запускается автоматически (unit, API, smoke, регрессия), чтобы быстро убедиться, что новая версия не сломала существующий функционал.
Таким образом, STLC в CI/CD превращается в непрерывный процесс контроля качества. Тестирование помогает останавливать ошибки как можно раньше, а QA-инженер фокусируется не только на поиске багов, но и на предотвращении проблем, анализе рисков и поддержании стабильного качества продукта при частых релизах.
Этапы STLC: полная структура
Ниже представлены семь этапов жизненного цикла тестирования программного обеспечения в соответствии с профессиональными стандартами тестирования. Каждый из этих этапов имеет собственные цели, входные и выходные данные, а также набор создаваемых артефактов, которые используются для управления качеством продукта.
1. Test Planning — планирование тестирования
Планирование тестирования представляет собой деятельность по определению целей проверки, стратегии и подходов к тестированию, необходимых ресурсов, рисков и критериев качества. Именно на этом этапе формируется фундамент всего процесса тестирования, определяющий, что именно будет тестироваться и каким образом.
В рамках планирования тестирования определяются цели тестирования и критерии качества, выбираются уровни и виды тестов, такие как модульное, интеграционное, системное и приёмочное тестирование. Также проводится анализ рисков и формируются приоритеты проверок, планируются ресурсы и сроки выполнения тестирования, после чего подготавливается и утверждается Test Plan — основной стратегический документ тестирования.
Примером может служить планирование тестирования интернет-магазина, при котором приоритет отдается критическим бизнес-сценариям, связанным с оформлением заказа, оплатой и возвратами, поскольку сбои в этих областях напрямую влияют на доход компании.
Без грамотного планирования тестирование становится хаотичным, а уровень рисков для продукта существенно возрастает.
2. Test Monitoring & Control — мониторинг и управление тестированием
Мониторинг и управление тестированием являются непрерывным этапом, сопровождающим весь жизненный цикл тестирования. Его основная задача заключается в контроле состояния процессов, своевременной корректировке планов и обеспечении прозрачности работы команды качества.
В ходе мониторинга отслеживаются фактически выполненные тесты и их соответствие плану, количество и критичность обнаруженных дефектов, уровень покрытия требований тестами, а также скорость исправлений и повторных проверок. Полученные данные позволяют видеть реальную картину качества продукта, а контроль обеспечивает возможность корректировки стратегии тестирования в случае отклонений от ожидаемого хода работ.
Так, например, в ходе спринта мониторинг может показать отставание по выполнению тестов и рост числа критических дефектов. На основе этих данных команда корректирует приоритеты, фокусируясь на ключевых сценариях и стабилизации среды, что позволяет сохранить контроль над качеством и сроками.
Без мониторинга процесс тестирования теряет управляемость.
3. Test Analysis — анализ тестируемой системы
Анализ является этапом, на котором тестировщик изучает требования, архитектуру и бизнес-правила системы с целью определить, что именно подлежит тестированию. Это интеллектуально сложная работа, требующая внимательного отношения к деталям и понимания логики продукта.
В процессе анализа тестировщик изучает требования и макеты интерфейса, выявляет противоречия и неопределённости, формирует тестовые условия, а также оценивает риски и приоритеты для каждой функциональной области. Качество этого этапа напрямую влияет на последующие стадии тестирования.
Например, при анализе задачи «оформление заказа» с использованием промокодов тестировщик должен понять, какие типы промокодов существуют, какие ограничения на них накладываются и какие комбинации условий могут привести к ошибкам в расчётах.
Качество тестирования напрямую зависит от качества проведённого анализа.
4. Test Design — проектирование тестов
Проектирование тестов представляет собой процесс преобразования тестовых условий в тест-кейсы, чек-листы, тестовые сценарии и тестовые данные. На этом этапе применяется тест-дизайн как совокупность техник, направленных на оптимизацию тестирования.
В ходе проектирования используются такие техники, как разбиение на классы эквивалентности, анализ граничных значений, решающие таблицы, диаграммы переходов состояний и попарное тестирование. Задача тестировщика заключается в создании набора тестов, обеспечивающего высокое покрытие функциональности при минимальном количестве сценариев, исключении дублирования и формировании логичной структуры тестовой документации.
Например, при тестировании формы регистрации с несколькими полями и правилами валидации тестировщик применяет классы эквивалентности, анализ граничных значений и попарное тестирование, что позволяет сократить количество проверок и при этом покрыть все значимые комбинации входных данных.
Качественный тест-дизайн существенно снижает трудозатраты команды и повышает эффективность тестирования.
5. Test Implementation — подготовка среды и реализация тестов
Этап реализации тестов включает подготовку тестовой среды, оформление тестов в системе тест-менеджмента, подготовку тестовых данных и создание автотестов в случае использования автоматизации.
В рамках данного этапа создаются тестовые пользователи, разворачивается тестовая среда, настраиваются подключения, API-ключи и базы данных, подготавливаются тестовые данные, разрабатываются автоматизированные тесты различных уровней и проводится проверка готовности окружения с помощью smoke-тестирования. Практический смысл этапа заключается в том, чтобы убедиться, что тесты могут выполняться без технических сбоев.
Примером может служить подготовка тестирования новой версии веб-сервиса, при которой QA-инженер разворачивает тестовое окружение, подготавливает пользователей и данные, настраивает интеграции и выполняет smoke-проверку, подтверждая готовность системы к выполнению тестов.
Качественная реализация является фундаментом корректного выполнения тестирования.
6. Test Execution — выполнение тестов
Выполнение тестов представляет собой запуск тест-кейсов, сравнение ожидаемых и фактических результатов, регистрацию дефектов и проведение повторных проверок.
На этом этапе выполняются ручные и автоматизированные тесты, фиксируются фактические результаты их выполнения, оформляются баг-репорты, проводится ретест исправлений и регрессионное тестирование, а также оценивается стабильность тестируемой версии продукта.
Например, если модуль расчёта скидки возвращает некорректный результат при определённых входных данных, тестировщик регистрирует дефект с подробным описанием шагов воспроизведения и ожидаемого поведения системы.
Выполнение тестов является центральной стадией STLC, на которой проявляется качество анализа, проектирования и подготовки тестирования.
7. Test Completion — завершение тестирования
Завершение тестирования представляет собой подведение итогов выполненных работ, включающее анализ тестового покрытия, формирование отчётов, оценку качества продукта и фиксацию выводов для последующих циклов разработки.
Основным итоговым артефактом данного этапа является Test Summary Report — итоговый отчёт о тестировании. В рамках завершения проводится оценка покрытия требований, анализ обнаруженных дефектов, проверка выполнения критериев выхода, ретроспектива процесса тестирования и формирование рекомендаций по его улучшению, а также архивация тестовых артефактов.
Примером служит завершение тестирования релизной версии, при котором команда качества формирует Test Summary Report, фиксирует уровень покрытия и критические дефекты, проводит ретроспективу и принимает решение о готовности продукта к выпуску.
Завершение тестирования позволяет преобразовать результаты текущих проверок в практическую пользу для будущих релизов и улучшения процесса обеспечения качества.
Практический кейс: как STLC снижает затраты и повышает качество
Рассмотрим пример из типового проекта — разработку модуля оформления заказа в интернет-магазине. Команда внедрила формальный жизненный цикл тестирования (STLC), который включал ранний анализ требований и применение тест-дизайна ещё до начала разработки.
На этапе анализа были выявлены шесть логических противоречий в бизнес-требованиях, связанных с работой промокодов, ограничениями на оплату частями и правилами округления стоимости. После уточнения этих требований экономия составила около 18 часов разработки. На этапе тест-дизайна было создано 42 тестовых сценария, охватывающих как стандартные, так и граничные случаи. Использование подготовленных тестовых данных позволило обнаружить ошибку округления цены, которая проявлялась при сумме заказа выше 99 999 рублей. В ходе выполнения тестов было найдено 17 дефектов, из которых 4 оказались критичными, включая некорректную работу скидки, сбой при повторной оплате и невозможность оформить заказ в мобильной версии. На этапе завершения тестирования был сформирован отчёт, показавший, что 73 % обнаруженных дефектов были связаны с недочётами в требованиях, что стало аргументом в пользу более строгого анализа на будущих спринтах.
Итогом стало то, что формальный подход STLC позволил сэкономить более 30 часов разработки, сократить количество дефектов после релиза до двух и ускорить выпуск версии на полторы недели.
Как STLC работает в Agile и Waterfall
В разных моделях разработки тестирование встроено по-разному, но этапы STLC присутствуют везде.
STLC в Waterfall. Waterfall — каскадная модель разработки, в которой этапы выполняются последовательно и переход к следующему этапу возможен только после завершения предыдущего.
- этапы идут строго последовательно;
- тестирование начинается после завершения разработки;
- планирование и документация максимально формальны.
STLC в Agile. Agile — гибкий подход к разработке, основанный на итеративной работе, тесном взаимодействии команды и регулярной поставке ценного результата.
- этапы накладываются друг на друга;
- анализ, дизайн и выполнение тестов идут параллельно с разработкой;
- ретроспектива и улучшения происходят регулярно;
- роль QA в команде шире: взаимодействие, уточнение требований, участие в планировании.
Главный вывод: модель SDLC меняется — STLC остаётся.
Модель ETVX: формализация этапов STLC
ETVX — это структура описания процессов, используемая в корпоративных стандартах качества для формализации и управления жизненным циклом тестирования. Она позволяет описывать каждый этап STLC не только как набор действий, но и как управляемый процесс с чёткими условиями начала и завершения, что особенно важно для зрелых команд и масштабных проектов.
В рамках модели ETVX каждый этап тестирования рассматривается через четыре аспекта: входные критерии, задачи этапа, проверки корректности выполнения и выходные критерии. Такой подход помогает устранить размытые границы между этапами, снизить субъективность принятия решений и обеспечить единое понимание процесса всеми участниками команды.
Использование ETVX в STLC позволяет формализовать процессы тестирования на уровне enterprise, повысить прозрачность контроля качества и упростить внедрение метрик и аудита. Модель особенно полезна в среде с несколькими командами, сложной архитектурой и высокими требованиями к предсказуемости и воспроизводимости качества.
Метрики, которые используют в STLC для оценки качества
Метрики в STLC используются для оценки эффективности работы команды тестирования и качества продукта. Они позволяют понять, насколько хорошо покрыты требования, где возникают дефекты и на каких этапах процесса тестирования появляются основные проблемы. Без измеримых показателей тестирование превращается в субъективную активность, результаты которой сложно аргументировать.
Для оценки качества тестирования применяются такие метрики, как покрытие тестами требований (Test Coverage), плотность дефектов (Defect Density), доля дефектов, выявленных после релиза (Defect Leakage), а также процент повторно открытых дефектов (Defect Reopen Rate). Дополнительно используются показатели скорости выполнения тестов (Test Execution Rate), уровня автоматизации (Automation Coverage) и среднего времени обнаружения и исправления дефектов (Mean Time to Detect / Repair).
Использование метрик позволяет QA говорить с продуктом и бизнесом на одном языке. Они дают возможность обоснованно доказывать ценность тестирования, принимать решения на основе данных и системно улучшать процесс. Без метрик невозможно объективно оценить эффективность тестирования и его вклад в качество продукта.
Как внедрить STLC в проекте: пошаговая инструкция
Внедрение STLC особенно эффективно в командах, где тестирование ранее не имело формализованного процесса. Начинать следует с формирования единого подхода: необходимо описать этапы тестирования, а также критерии входа и выхода для каждого из них, чтобы команда одинаково понимала структуру процесса.
Следующим шагом является создание базовых артефактов тестирования, включая шаблоны тест-плана, тест-кейсов и итоговых отчётов. Параллельно важно обучить команду, объяснив роль анализа требований, тест-дизайна и контроля качества, а также внедрить такие практики, как трассируемость, тестовые условия и чек-листы.
Для повышения эффективности процесс дополняется автоматизацией через CI/CD, где smoke- и регрессионные проверки выполняются автоматически, а ручное тестирование фокусируется на рисках. Завершающим элементом становится внедрение метрик и регулярные ретроспективы, позволяющие адаптировать STLC под особенности команды и проекта.
Типичные ошибки новичков на этапах STLC (топ-5)
Отсутствие риск-ориентированного планирования
На этапе планирования новички часто не выделяют приоритетные области и не учитывают риски. В результате ресурсы расходуются на второстепенные проверки, тогда как критически важные бизнес-сценарии остаются недостаточно покрытыми.Поверхностный анализ требований
Требования анализируются формально, без учёта неявных условий, бизнес-контекста и граничных случаев. Это приводит к неполному тестовому покрытию и обнаружению значимых дефектов уже на поздних этапах разработки.Игнорирование негативных сценариев
Тесты проектируются преимущественно под «счастливые пути». Ошибочные, нестандартные и негативные сценарии либо отсутствуют, либо проверяются поверхностно, что снижает устойчивость продукта в реальных условиях.Проблемы с подготовкой среды и данных
На этапах реализации и выполнения тестирования часто используются неподготовленные среды и некорректные тестовые данные. Это искажает результаты проверок и усложняет воспроизведение дефектов.Игнорирование этапа завершения тестирования
Этап Test Completion нередко пропускается: не формируются итоговые отчёты, не проводится ретроспектива и не делаются выводы. В результате команда не улучшает процесс и повторяет одни и те же ошибки от релиза к релизу.
Вопросы и ответы по STLC
В чем главное значение STLC?
STLC задаёт системный и управляемый подход к тестированию, позволяя планировать проверки, контролировать качество продукта и снижать риски на всех этапах разработки.
Чем STLC отличается от SDLC?
SDLC описывает полный жизненный цикл разработки программного обеспечения, тогда как STLC фокусируется только на тестировании и контроле качества и является частью SDLC.
Можно ли использовать STLC в Agile?
Да. В Agile этапы STLC выполняются итеративно и могут перекрываться, но логика жизненного цикла тестирования сохраняется за счёт качественных входных артефактов и регулярной обратной связи.
Нужен ли STLC в небольших проектах?
Да, даже в упрощённом виде. STLC помогает избежать хаотичного тестирования, определить приоритеты проверок и повысить предсказуемость качества.
Какие артефакты формируются в STLC?
К основным артефактам относятся Test Plan, тестовые условия, тест-кейсы или чек-листы, баг-репорты и итоговый отчёт о тестировании (Test Summary Report).
Как STLC связан с CI/CD?
В CI/CD STLC реализуется через короткие циклы контроля качества и автоматизированные проверки, которые выполняются в пайплайне и служат качественным барьером перед релизом.
Нужно ли знать STLC для собеседований?
Да. Вопросы по STLC часто задают на интервью, так как понимание жизненного цикла тестирования демонстрирует системное мышление и зрелость QA-инженера.
Вывод
STLC — это не формальная схема и не набор обязательных шагов, а системный подход к управлению качеством программного обеспечения. Он позволяет команде заранее видеть риски, принимать обоснованные решения, контролировать состояние продукта и избегать дорогостоящих ошибок на поздних этапах разработки.
Понимание жизненного цикла тестирования даёт тестировщику целостное видение процесса: от требований и архитектуры до метрик качества и готовности к релизу. Именно STLC связывает тест-дизайн, выполнение тестов, аналитику дефектов и CI/CD в единый, управляемый процесс.
Для команды STLC означает предсказуемость, прозрачность и устойчивое качество. Для бизнеса — снижение рисков, ускорение релизов и контроль затрат. А для самого тестировщика — переход от роли исполнителя проверок к роли инженера качества, влияющего на продукт и процессы.
Независимо от модели разработки, инструментов и масштаба проекта, STLC остаётся фундаментом профессионального тестирования и одним из ключевых факторов зрелости IT-команды.