Manual QA course
Apply now
5.0
4.9
4.7
4.3

Тестирование, контроль качества (QC) и обеспечение качества (QA), что это?

September 21, 2020

Для человека, который только собирается начинать карьеру в ИТ, эти три термина могут показаться если не идентичными, то очень близкими. Это все о тестировании программного продукта. Более того, встречаются даже отдельные менеджеры продукта, которые не до конца понимают смысл этих понятий управления качеством ПО, в результате проект выходит за рамки бюджета, результат не соответствует ожиданиям и т.д. Итак, чтобы избавить вас от потенциальных проблем из-за непонимания этих базовых понятий, представляем вам краткую характеристику этих терминов.

Три уровня тестирования ПО

Итак, общую схему взаимоотношения этих понятий можно представить следующим рисунком:

Рисунок 1 – Тестирование, QA и QC

Теперь давайте рассмотрим это более подробно.

  1. Тестирование – это начальный уровень контроля, первый этап. В процессе тестирования новый программный продукт проверяют на соответствие заявленным к нему требованиям. Фактически, работа на этом уровне выглядит так: выдается ПО и критерии его соответствия – выполняется проверка по этим критериям – описываются все выявленные в ходе проверки дефекты – исправленный продукт проходит повторную проверку, пока все несоответствия не будут исправлены. Но это не значит, что тестирование – это просто «кликание мышкой» по определенному плану. Для успешного выполнения этой работы понадобятся навыки ручного (или автоматического) тестирования. Основная цель этого процесса – найти максимально много дефектов и выявить условия их появления.
  2. Контроль качества (QC). На этом уровне есть тестирование, но QC не только об этом. Это не только проверка на соответствие требованиям, как в первом этапе, но и оценка соответствия заявленному уровню качества продукта и определение готовности к выпуску продукта – готов ли продукт к выходу на рынок, или требует доработки. Для этого оценивается приоритет и количество ошибок. Если в программе остались критические дефекты, QC-специалист не пропустит его дальше и будет требовать устранить их. Здесь основная цель – оценить общую картину качества программы.
  3. Обеспечение качества (QA). Это – высший уровень процесса контроля ПО. QA специалисты следят уже не только за тестерами, но и за всем процессом разработки. Здесь основанная задача – создать такую систему, которая поможет минимизировать количество ошибок и облегчит тестирование, например, за счет введения улучшенной системы планирования, чтобы и у разработчиков, и у тестировщиков было достаточно времени на выполнение качественной работы. Сюда может входить проверка кода на соответствие имеющимся стандартам, проверка документов и внедрение новых методик контроля качества и проч.

Менеджер проекта (PM) уделяет процессу управление качеством много времени. Предполагается, что это – задача РМ, но конечно же менеджер проектов не сможет сделать все как надо сам. В команде обязательно должен быть хотя бы один QC специалист и несколько тестировщиков, а еще зачастую функции QA выполняет руководитель команды тестировщиков, который хорошо понимает, что и когда должно быть сделано. Одним словом, в процессе обеспечения и контроля качества должна быть задействована целая команда.

В QA входит разработка плана тестирования, и его проведение согласно этому документу, а также, оценка и контроль результатов. QC-специалисты анализируют результаты тестирования и устраняют найденные дефекты. По сравнению с QA, QC требует больших затрат времени и его проводят после завершения этапа обеспечения качества. Так сложилось, что многие считают тестировщика и QA-инженера одним лицом, но как вы видите, роли и обязанности тестировщиков, QA и QC довольно сильно отличаются. Скорее можно сказать, что QC и QA – это следующие логические этапы профессионального тестировщика.

Джуниоры-тестировщики тестируют ПО по сценариям, а их старшие коллеги разрабатывают эти планы, тест-кейсы и всю систему контроля качества в целом.

Вместо выводов

Здесь мы рассмотрели разницу между понятиями «тестирование», «QA» и «QC». Хотя это и разные вещи, но конечная цель у них одна – выдать на рынок качественный продукт, удовлетворяющий потребности клиентов.

Никто не умеет создавать идеальные программы сразу, это факт. Но люди разработали целую систему контроля качества, которая реально работает и дает результат. При правильном применении QA и QC позволяют не только свести ошибки и дефекты к минимуму, но и предотвратить их появление еще на этапе разработки.


Запись на курс Manual QA