Ручное тестирование
Ручное тестирование (англ. manual testing) — часть процесса тестирования на этапе контроля качества в процессе разработки программного обеспечения. Оно производится тестировщиком без использования средств автоматизации (скриптов или программ), для проверки программы или сайта путём моделирования действий пользователя[1].
В ходе ручного тестирования специалист взаимодействует с программным продуктом через пользовательский интерфейс, проверяя его соответствие требованиям и фиксируя найденные дефекты (баги) в системе отслеживания ошибок[2].
Этапы ручного тестирования
Процесс ручного тестирования обычно включает следующие стадии:
- Анализ требований: Изучение технического задания и документации, чтобы понять, как должна работать программа.
- Планирование: Определение стратегии тестирования, выбор необходимых инструментов и ресурсов.
- Разработка тестовых сценариев (тест-кейсов): Написание пошаговых инструкций, описывающих действия, которые необходимо выполнить, и ожидаемый результат.
- Выполнение тестов: Непосредственное прохождение сценариев тестировщиком.
- Регистрация дефектов: Оформление отчетов об ошибках при несовпадении фактического результата с ожидаемым.
- Ретест (проверка исправлений): Повторное тестирование после того, как разработчики исправили найденные ошибки[3].
Виды ручного тестирования
Ручное тестирование применяется в различных подходах:
- Функциональное тестирование — проверка того, что ПО выполняет заявленные функции.
- Юзабилити-тестирование — оценка удобства использования интерфейса.
- Исследовательское тестирование (Exploratory testing) — одновременное изучение системы, проектирование и исполнение тестов без заранее подготовленных скриптов, полагаясь на опыт тестировщика.
- Приёмочное тестирование — проверка соответствия продукта потребностям заказчика перед релизом.
Преимущества и недостатки
По сравнению с автоматизированным тестированием, ручной метод имеет свои особенности[4]:
Преимущества
- Визуальная оценка: Человек может заметить графические дефекты или неудобства интерфейса, которые пропустит автотест.
- Гибкость: Тестировщик может быстро адаптироваться к изменениям и проверять нестандартные кейсы «на лету» (ad-hoc тестирование).
- Низкая стоимость на старте: Для начала работы не требуется дорогостоящее ПО или время на написание кода автотестов.
- Человеческий фактор: Имитация реального поведения пользователя, который может совершать непредсказуемые действия.
Недостатки
- Низкая скорость: Человек выполняет тесты значительно медленнее компьютера.
- Риск ошибок: Из-за усталости или невнимательности тестировщик может пропустить дефект при многократном повторении одних и тех же действий.
- Сложность в нагрузочном тестировании: Вручную невозможно эффективно симулировать одновременную работу тысяч пользователей.
- Отсутствие повторяемости: Сложно гарантировать, что тест каждый раз выполняется абсолютно идентично.
См. также
- Автоматизированное тестирование
- Бета-тестирование
- Интеграционное тестирование
- Разработка через тестирование
- Регрессионное тестирование
- Системное тестирование
Примечания
- ↑ manual testing (англ.). ISTQB Glossary. Дата обращения: 25 октября 2023.
- ↑ Различные виды тестирования программного обеспечения. Atlassian. Дата обращения: 25 октября 2023.
- ↑ What is software testing? (англ.). IBM. Дата обращения: 25 октября 2023.
- ↑ Автоматизированное и ручное тестирование. Atlassian. Дата обращения: 25 октября 2023.
Ссылки
- Тестирование — это не поиск ошибок! // Хабр.