Что такое Release Candidate (RC) в процессе разработки ПО?

«Что такое Release Candidate (RC) в процессе разработки ПО?» — вопрос из категории Управление тестированием, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Release Candidate (RC) — это стабильная предрелизная версия программного обеспечения, которая потенциально готова к финальному выпуску, если в ходе итогового тестирования не будут обнаружены критические дефекты.

Ключевые характеристики RC:

  • Полнота функционала: Содержит все запланированные для данного релиза функции. Разработка новых фич остановлена.
  • Фокус на стабильность: Основная цель этапа — отлов критических багов (блокирующих, вызывающих падение, нарушающих безопасность), а не добавление возможностей.
  • Кандидат в релиз: Если в RC-версии не находят критических проблем, она становится финальным релизом без изменений в коде (меняется только метка версии).

Типичный workflow с использованием RC:

Версия 2.1.0-beta.1  ->  Тестирование, исправления
Версия 2.1.0-beta.2  ->  Тестирование, исправления
Версия 2.1.0-rc.1    ->  **Release Candidate 1: Финальное тестирование**
    |-> Найден критический баг -> 2.1.0-rc.2
    |-> Критических багов нет -> 2.1.0 (ФИНАЛЬНЫЙ РЕЛИЗ)

Практика: RC-версии часто распространяются среди:

  • Внутренних QA-команд для регрессионного и нагрузочного тестирования.
  • Группы бета-тестеров или ключевых клиентов (пробное внедрение).
  • На публичные бета-тесты (например, для open-source проектов).

Отличие от бета-версии (Beta): Бета обычно менее стабильна, может содержать известные незначительные баги, и в неё ещё могут добавляться фичи. RC — это финальная стадия, «замороженная» в плане функциональности.