В чём разница между QA и QC в тестировании программного обеспечения?

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

Ответ

QA (Quality Assurance) и QC (Quality Control) — это взаимодополняющие, но различные компоненты управления качеством.

Аспект QA (Обеспечение качества) QC (Контроль качества)
Фокус Процессы разработки Продукт (готовое ПО)
Подход Проактивный (предотвращение дефектов) Реактивный (обнаружение дефектов)
Цель Улучшить процессы, чтобы дефекты не возникали Найти дефекты в уже созданном продукте
Деятельность Планирование, аудиты, обучение, внедрение стандартов Тестирование, инспекции, ревью кода
Вопрос «Строим ли мы продукт ПРАВИЛЬНЫМ способом?» «Построили ли мы продукт ПРАВИЛЬНО?»

Аналогия из производства:

  • QA — это создание инструкций, обучение рабочих, калибровка станков (процессы).
  • QC — это проверка готовых деталей на конвейере браковщиком (продукт).

На практике: Эффективная команда использует оба подхода: QA создаёт надежные процессы (например, TDD, CI/CD), а QC (тестировщики) в рамках этих процессов проверяют результат.