Мануальное тестирование ПО: Урок 4 для QA-тестировщика

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

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

Тест-кейсы и баг-репорты

Тест-кейс — структурированный документ, описывающий конкретные сценарии тестирования и ожидаемые результаты. Каждый тест-кейс предназначен для проверки одного или нескольких аспектов работы программы. Он помогает тестировщику систематично проверять функционал приложения. Написание тест-кейса начинается с заголовка, чётко указывающего, что будет проверяться (например, «Проверка авторизации пользователя», «Регистрация нового аккаунта», «Переход между страницами»). Заголовок должен быть кратким и информативным. Далее описываются предшествующие условия, необходимые для начала теста (например, для проверки авторизации — наличие у пользователя имени и пароля). Это помогает избежать лишних шагов и сосредоточиться на ключевом функционале. Основной раздел содержит подробное описание шагов, которые тестировщик должен выполнить. Шаги должны быть чёткими и конкретными, чтобы любой человек мог их повторить (например, «Открыть страницу логина», «Ввести корректный логин и пароль», «Нажать на кнопку ‘Войти’»). Важно записывать шаги по порядку. Описывается ожидаемый результат — то, что должно произойти при успешном выполнении всех шагов. Он должен быть однозначным и чётким (например, «Пользователь успешно авторизован и перенаправлен на главную страницу»). Если результаты совпадают с ожидаемыми, тест считается успешным. Тест-кейсы используются повторно для разных релизов программы, обеспечивая последовательное тестирование. После выполнения всех шагов тестировщик фиксирует фактический результат и сравнивает его с ожидаемым. Несовпадение указывает на баг.

Когда тестировщик находит ошибку, он составляет баг-репорт — документ, подробно описывающий проблему, включая шаги, приведшие к ней, и фактический результат. Хорошо составленный баг-репорт помогает разработчикам быстро понять и исправить ошибку.

Основные элементы баг-репорта:

  • Bug ID: Уникальный идентификатор бага.
  • Название бага: Краткое и информативное описание проблемы.
  • Шаги воспроизведения: Подробное описание действий, приведших к обнаружению бага.
  • Ожидаемый результат: Как программа должна была себя вести.
  • Фактический результат: Как программа вела себя на самом деле.
  • Приоритет и серьёзность: Важность и срочность исправления бага.

Пример тест-кейса:

  • Заголовок: Проверка авторизации с корректными данными
  • Предусловие: Пользователь зарегистрирован в системе.
  • Шаги:
    1. Открыть страницу логина.
    2. Ввести корректный логин и пароль.
    3. Нажать кнопку «Войти».
  • Ожидаемый результат: Пользователь успешно авторизован и перенаправлен на главную страницу.

Пример баг-репорта: Предположим, тестируется форма авторизации. Ожидаемый результат — успешная авторизация при вводе корректных данных. Если программа выдает сообщение об ошибке, несмотря на корректные данные, это баг, который нужно описать в баг-репорте.

Инструменты для ведения баг-репортов (Jira, Bugzilla) систематизируют этот процесс и упрощают взаимодействие между командами.

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

Что будем искать? Например,программа