Встречается на 75% собеседований по QA

Какие виды тестирования существуют

Тестирование программного обеспечения — это процесс проверки качества и надёжности продукта, включающий множество видов тестов, каждый из которых преследует свои цели. Основные виды тестирования можно разделить на функциональные и нефункциональные, а также выделить тесты, связанные с изменениями и интеграцией. Рассмотрим ключевые из них.

Функциональное и нефункциональное тестирование

Функциональное тестирование проверяет, соответствует ли система её функциональным требованиям. Оно основано на анализе спецификаций и проверяет, что каждая функция работает так, как задумано. Например, проверка, что веб-форма корректно отправляет данные после заполнения.

Нефункциональное тестирование оценивает аспекты, не связанные с конкретными функциями: производительность, удобство использования, безопасность, надёжность. Например, тестирование производительности проверяет время отклика системы при большой нагрузке.

Тестирование изменений и интеграции

Регрессионное тестирование выполняется после изменений в коде (обновления, исправления) и убеждается, что новые изменения не сломали существующую функциональность. Обычно это автоматизированные наборы тестов, запускаемые при каждом изменении.

Интеграционное тестирование проверяет взаимодействие между модулями или компонентами системы. Цель — найти дефекты в интерфейсах и взаимодействиях между интегрируемыми частями.

Системное тестирование охватывает проверку всей системы в целом, убеждаясь, что она соответствует всем требованиям — и функциональным, и нефункциональным.

Тестирование готовности продукта

Приёмочное тестирование определяет, готов ли продукт к эксплуатации. Часто включает выполнение базовых сценариев пользователями для подтверждения, что система работает в реальных условиях.

Юзабилити-тестирование фокусируется на удобстве использования: насколько интуитивен интерфейс, каков пользовательский опыт.

Тестирование безопасности выявляет уязвимости, которые могут привести к несанкционированному доступу или вреду.

Тестирование совместимости проверяет работу ПО в различных средах: операционных системах, браузерах, сетевых конфигурациях.

Коротко

  • Виды тестирования делятся на функциональные и нефункциональные.
  • Регрессионное тестирование защищает от регрессий после изменений.
  • Интеграционное и системное тестирование проверяют взаимодействие и целостность.
  • Приёмочное, юзабилити, безопасность и совместимость — ключевые для готовности продукта.
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы