Тестирование программного продукта – сложный и объемный процесс. Чтобы он проходил максимально эффективно, проверять надо только то, что действительно нужно в конкретной ситуации. Для этого тестировщики используют тестовые сценарии, которые сами же и разрабатывают.
Что такое тестовый сценарий
Тестовый сценарий представляет собой подробную инструкцию. В ней изложена последовательность шагов, которые должен выполнить инженер по тестированию во время проверки продукта на работоспособность. Как правило сценарий содержит несколько пунктов с описанием определенных действий. Каждое из них имеет свой результат, с которым будет сравниваться итоговое поведение программы.
Последовательно выполняя шаги, указанные в тестовом сценарии, специалист сравнивает реальный результат с ожидаемым. Иногда не получается выполнить определенный пункт или ожидаемые итоги не соотносятся с действительностью. В этом случае составляется подробный отчет.
Чаще всего тестовый сценарий отвечает за одну конкретную функцию, например, авторизация, загрузка документа, оформление заказа. Иногда проверяется сразу несколько связанных друг с другом функций. Такой подход позволяет значительно ускорить процесс тестирования.
Существует еще один аналогичный инструмент – тест-кейс. В отличии от сценариев, он всегда проверяет только одну определенную функцию. При этом в нем содержатся более подробные пояснения: на какую кнопку нажать, куда переместить курсор, какую информацию вывести и т.д. Данный метод позволяет выявить локальные ошибки.
Тестовый сценарий, в свою очередь, может описывать сразу несколько функций и дает возможность сымитировать поведение пользователя. Поэтому его используют для проверки всей функциональности и обнаружения критических ошибок.
Кто и зачем пишет сценарии тестирования
Написанием сценариев занимаются сами инженеры по тестированию. Обычно эта задача для опытных специалистов, которые уже долгое время работают с продуктом и знают о его особенностях. Также в написании сценариев иногда задействованы бизнес-аналитики. Они составляют перечень требований к продукту.
При создании сценариев тестирования, специалисты придерживаются следующих аргументов:
- подробная пошаговая инструкция помогает не упустить из виду важные детали;
- наличие тестового сценария дает возможность доверить проверку даже новичку, который еще не успел ознакомиться со всей спецификой проекта;
- сценарий содержит конкретные результаты, которые ждут от продукта. Их не нужно придумывать;
- благодаря сценарию, функция каждый раз проверяется одинаково. Повторные проверки – обычное дело, особенно после релиза обновления. В случае возникновения проблем, тестировщик использует тот же алгоритм, тем самым быстро находя нововведения, из-за которых все сломалось.
Кроме этого, тестовый сценарий может стать основой для автоматизированного тестирования, которое редко пишут с полного нуля.
Преимущества тестовых сценариев
По сравнению с хаотичным тестированием, тестовые сценарии имеют целый ряд преимуществ. Прежде всего, это системность. Наличие подробного описания, позволяет находить намного больше багов и ошибок. Четкий план структурирует весь процесс проверки, и упустить что-то важное становится намного тяжелее.
В тестировании не менее важна целостность. В этом плане, сценарий намного эффективнее тест-кейса. Он позволяет проверить весь путь, который проходит пользователь для решения определенной задачи. Например, необходимо протестировать функционал, связанный с оформлением заказа. Сценарий начнет проверку с кнопки на главной странице и закончит функцией, отвечающий за оплату.
Кроме этого со сценариями очень удобно работать в условиях большой команды. Инструкция позволит провести тестирование даже новому сотруднику, который еще не успел войти в курс дела и познакомиться с продуктом более подробно. Более того, на основе сценариев можно создать скрипт, тем самым автоматизировать процесс работы.
Создание тестовых сценариев
Процесс создания тестового сценария состоит из следующих шагов:
- составление перечня требований – для этого необходимо ознакомиться с пользовательскими сценариями, изучить спецификацию, понять каких результатов ждут от работы программы;
- определение главной цели – тестировщик должен понимать, что именно предстоит проверять сценарию. В качестве цели может выступать поиск определенных ошибок или общая проверка работоспособности;
- написание инструкции – процесс создания самого сценария. Специалист описывает шаги, необходимые для проверки определенного аспекта продукта. Каждый шаг должен быть максимально понятным и охватывать одно конкретное действие;
- описание предполагаемых результатов – каждый шаг должен приводить к конкретному результату, который необходимо подробно изложить;
- формирование из описанных действий итогового документа.
Советы по написанию сценариев
Писать качественные тестовые сценарии – довольно сложная работа, требующая от специалиста богатого практического опыта. Поэтому новичкам стоит придерживаться определенных рекомендаций и соблюдать ряд правил.
Во-первых, стоит избегать неоднозначных формулировок. Описания шагов не должны вызывать разночтений. Текст максимально четкий и понятный. Во-вторых, необходимо учитывать различные пользовательские сценарии. Тестировщик должен предусмотреть ошибки при вводе данных, нажатие не на те кнопки, загрузку файлов не того расширения и прочее.
Также важно задать начальные условия. Сценарий должен содержать информацию о том, какой браузер необходимо использовать, должен ли тестировщик быть зарегистрирован, какое устройство используется и т.д. Тоже самое касается ожидаемых результатов. Важно понимать, что программа должна сделать в итоге, чтобы специалист был уверен в ее работоспособности.
Кроме этого, важно помнить о необходимости поддержки и обновлении сценариев. После каждого обновления программного продукта, должен обновляться и тестовый сценарий.
Примеры тестовых сценариев
Почти на каждом сайте и в приложении пользователю предлагают пройти процедуру регистрации. Для данной функции тестовый сценарий, может выглядеть следующим образом:
- Открытие браузера Google Chrome;
- Ввод нужного URL-адреса;
- Нажатие клавиши «Enter»;
- На главной странице нажать на кнопку «Зарегистрироваться»;
- Дождаться полной загрузки веб-страницы;
- Ввод имени в поле «Имя»;
- Ввод придуманного пароля в поле «Пароль»;
- Повторный ввод пароля для подтверждения;
- Ввод электронный почты в поле «Email»;
- Нажатие кнопки «завершить регистрацию»;
- Дождаться полной загрузки веб-страницы;
- Убедиться, что на открывшейся странице присутствует надпись: «Вы успешно зарегистрировались»;
- Проверить наличие нового пользователя с введенным именем в базе данных;
- Нажать кнопку «Выйти из приложения»;
- Дождаться закрытия приложения.
Еще одной востребованной функцией является покупка товара в интернет-магазине. Для нее, приблизительный тестовый сценарий будет следующим:
- Найти приложение и зайти в него;
- Найти поле поиска в верхней части главной страницы;
- Ввести название несуществующей позиции и нажать кнопку «Найти»;
- Убедиться, что система выдала сообщение об отсутствии товара;
- Ввести в поле поиска наименование существующей позиции;
- Убедиться, что система нашла товары и отразила их в результатах поиска;
- Кликнуть на любой из представленных в выдаче товаров;
- Убедиться, что открывается страница с подробной информацией;
- Нажать кнопку «Добавить товар в корзину»;
- Убедиться, что выбранная позиция попала в корзину;
- Нажать на иконку корзины и перейти на страницу с товарами в корзине;
- Убедиться, что вся информация отображается верно;
- Нажать в нижней части страницы кнопку «Оформить заказ»;
- Дождаться загрузки страницы оформления заказа;
- Заполнить обязательный поля персональными данными;
- Указать адрес доставки;
- Указать способ оплаты;
- Нажать на кнопку «Подтвердить оформление заказа»;
- Убедиться, что заказ был обработан и открылась страница с уникальным номером для подтверждения;
- Перейти обратно на главную страницу и нажать кнопку «Выход».
Довольно часто, сценарии намного объемнее, поэтому их стараются автоматизировать при помощи специальных инструментов. Это помогает ускорить процесс тестирования и исключить человеческий фактор.