Вы запутались в определениях тестирование, QA, QC? Не можете понять разницу? Хотите разобраться в этих понятиях?
В этом посте мы постараемся ответить на эти вопросы.
Поехали 😉
Что такое тестирование?
Тестирование — слово, которое уже давно у большинства людей ассоциируется с ИТ и ПО. Но, на самом деле, это понятие намного шире 🙂
Тестирование — активность, направленная на проверку соответствия чего-либо каким-то конкретным требованиям.
Например, школьное тестирование по математике. Может быть направлено на проверку усвоенных учеником знаний (что-либо) по делению чисел в столбик (конкретное требование).
Или, тестирование веса мороженого в стаканчике на соответствие требованию к весу для этого мороженного.
Понятие “тестирование” может применяться везде, где можно выдвинуть конкретные требования. Программное обеспечение — не исключение 🙂
Что такое тестирование программного обеспечения (ПО)?
Максимально просто, исходя из определения тестирования:
Тестирование программного обеспечения (ПО) — процесс проверки программного обеспечения на соответствие заявленным требованиям.
Более профессионально выглядит так:
Тестирование программного обеспечения (ПО) — процесс, состоящий из активностей цикла тестирования, как статических, так и динамических, включающий в себя планирование, подготовку и проверку компонента, системы или связанных рабочих продуктов на соответствие заявленным требованиям и поиск дефектов. (ISTQB Glossary)
Как мы видим, определения сильно отличаются визуально, но описывают одно и тоже. Просто второй вариант — поподробнее 😉
Зачем нужно тестирование?
Мы не любим когда что-то:
- Ломается
- например, кондиционер в машине, когда на улице +35, а вам еще ехать 5 часов
- Не работает как ожидалось
- например, телефон, который супер-крутой и навороченный, но разряжается за 3 часа
- Не работает вообще
- например, не включается новый телевизор
Наоборот, мы хотим получать качественные продукты / услуги / сервисы и быть счастливыми 😇🥳
Для избежания описанных выше ситуаций и нужно тестирование!)
Что такое качество?
Качество — степень удовлетворения продукцией определенных потребностей потребителя.
Если потребности потребителя удовлетворены полностью — он счастлив.
Например:
- Вы заказали красную машину
- Вам привезли красную машину
- Вы получили, что хотели
- Вы рады 😄
Если потребности потребителя не удовлетворены — он будет расстроенным и злым.
Например:
- Вы заказали красную машину
- Вам привезли зеленую машину
- Вы не получили, что хотели
- Вы не рады 😤
Для каждого вида продукции существуют определенные требования к качеству.
Более того, для каждого отдельно взятого продукта существуют особые требования к качеству.
Например, давайте посмотрим на автомобили.
У всех автомобилей в мире есть общие требования к качеству. Они описаны в международных / отраслевых стандартах, и направлены на обеспечение базовых потребностей, например, безопасности или влиянии на окружающую среду.
Но, в то же время, каждый производитель автомобилей может устанавливать свои, внутренние требования к качеству.
То, что они отличаются, можно увидеть, сравнив Мерседес S-класса и Ладу Калину 😄
Что такое качество программного обеспечения (ПО)?
Качество ПО (software quality) — степень удовлетворения программным обеспечением определенных потребностей пользователя.
Если пользователь ПО удовлетворен — считается, что ПО качественное.
Измерение или оценка качества — сложный вопрос, о нем будет отдельный пост!
Что такое QC?
QC — аббревиатура фразы Quality Control, в переводе означает “контроль качества”.
Контроль качества (QC) — это процесс, направленный на выполнение требований к качеству.
Он сосредоточен на выпускаемом продукте, поиске багов и их устранении.
К нему относится следующее:
- Статическое тестирование, включая Code review
- Анализ продукта и требований (тест-анализ)
- Разработка тестовой документации (тест-дизайн)
- Тестирование
- Отчеты о тестировании
QC является одной из частей более масштабного процесса QA, о котором рассказано ниже.
Что такое QA?
QA — аббревиатура фразы Quality Assurance, в переводе означает “обеспечение качества”.
Обеспечение качества (QA) — процесс, направленный на обеспечение уверенности что требования к качеству будут выполнены.
Он сосредоточен на процессах, связанных с продуктом.
К нему относятся:
- Определение рабочих процессов и стандартов
- Аудиты
- Выбор и анализ инструментов
- Внедрение культуры
- …
QA, как и QC, являются частями более масштабного процесса управления качеством, но о нем — в другой раз 🙂
Сравнение QC и QA
Характеристика | Quality Control (QC) | Quality Assurance (QA) |
---|---|---|
Определение | QC — процесс, направленный на выполнение требований к качеству | QA — процесс, направленный на обеспечение уверенности что требования к качеству будут выполнены |
Цель | Найти и устранить дефекты | Предотвратить возникновение дефектов |
Ориентация на | Производимый продукт | Процессы создания продукта |
Ответственный | Testing team | Все участники, участвующие в создании продукта |
Активности | 1. Анализ документации 2. Подготовка тестирования 3. Тестирование 4. Отчетность 5. … | 1. Описание процессов 2. Аудиты 3. Подбор инструментов 4. Внедрение культуры 5. … |
Резюме
Мы базово разобрали понятия тестирование, качество, контроль качества (QC), обеспечение качества (QA), сравнили QC и QA, и поняли, что тестирование — это лишь “маленькая” часть в глобальном управлении качеством! 🙂
Мы создали маленький тест, чтоб вы могли проверять себя и перестать путаться в определениях!
Удачи! 💪
Если вам интересна тема тестирования, и вы хотели бы получать актуальную информацию по этой теме — подписывайтесь на наш телеграм канал, там интересно: статьи, тесты, опросы, нет спама 😉
Если вы хотите продолжить разбираться с тестированием — узнайте больше о профессии тестировщик, про уровни тестирования или посмотрите принципы тестирования ПО, которые являются основой для понимания тестирования ПО в целом.
FAQ
Что такое тестирование программного обеспечения (ПО)?
Тестирование программного обеспечения (ПО) — процесс, состоящий из активностей цикла тестирования, как статических, так и динамических, включающий в себя планирование, подготовку и проверку компонента, системы или связанных рабочих продуктов на соответствие заявленным требованиям и поиск дефектов.
Что такое QC?
Контроль качества (QC) — это процесс, направленный на выполнение требований к качеству.
Что такое QA?
Обеспечение качества (QA) — процесс, направленный на обеспечение уверенности что требования к качеству будут выполнены.