Под понятием QA (Quality Assurance) понимают очень многое: каждая компания или команда вкладывает в него свой смысл. Однако в основе всегда одно — QA это процесс контроля и улучшения качества продукта. Всё, что помогает сделать проект лучше, так или иначе относится к QA.
Участвовать в обеспечении качества могут (и должны) не только штатные тестировщики, но и все члены команды, работающие над продуктом: разработчики, менеджеры, продакт-оунеры, девопсы.
Забота о качестве проекта не должна лежать исключительно на плечах тестировщика и быть только его ответственностью. В этот процесс должны быть вовлечены все участники команды, например:
- разработчики — продумывать возможные зависимости новых функций и понимать, какие части системы могут быть затронуты;
- менеджеры — улучшать процессы, делать их более эффективными (налаживать взаимодействие между отделами, сокращать бесполезные созвоны и т. п.);
- девопсы — обеспечивать стабильность инфраструктуры, своевременные обновления и поддержку;
- продакт-оунеры — формулировать более чёткие и хорошо проработанные задачи.
К сожалению, на практике часто бывает так, что весь процесс обеспечения качества сводится лишь к проверке работоспособности функционала силами тестировщиков (неважно, ручных или автоматизаторов). При этом тестировщики нередко не могут или не хотят выходить за рамки своих прямых обязанностей — из-за высокой загрузки или недостатка знаний — и участвовать в выстраивании полноценного QA-процесса.
Тестировщик на проекте должен быть ответственным за создание и развитие процесса обеспечения качества, но не единственным человеком, который «тащит всё на себе».
Обеспечение качества — это не только поиск багов и регрессионное тестирование. Это комплексный подход, в котором должны участвовать все департаменты и роли в команде.