Что такое QA (обеспечение качества) в контексте тестирования ПО?

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

Ответ

QA (Quality Assurance) — это систематический процесс управления качеством разработки программного обеспечения, направленный на предотвращение дефектов через улучшение процессов, а не только на их поиск.

Ключевые отличия от QC (контроля качества):

  • QA (Assurance) — проактивный, процессо-ориентированный. Фокус на «строим ли мы продукт правильно?» (правильные процессы, стандарты, методологии).
  • QC (Control) — реактивный, продукт-ориентированный. Фокус на «построили ли мы продукт правильно?» (тестирование, инспекции готового продукта).

Основные активности QA:

  1. Управление процессами: Внедрение и соблюдение стандартов (например, ISO, CMMI).
  2. Аудит и ревью: Проверка процессов разработки, требований, кода.
  3. Тест-менеджмент: Планирование, оценка рисков, метрики качества.
  4. Профилактика: Обучение команды, анализ причин дефектов (RCA), улучшение циклов разработки.

Пример: Внедрение практики Code Review — это активность QA, так как она предотвращает появление багов на ранней стадии, улучшая процесс разработки.