Реализация SpecFlow Feature-файла

Реализация SpecFlow Feature-файла

Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс

Всем привет. В предыдущей статье мы говорили о создании фича-файла. Сейчас мы рассмотрим его реализацию, но сперва расскажу, какими бывают пути написания тестовых сценариев в SpecFlow. Все их можно разделить на 3 группы:

Обычное Data Driven тестирование

  • Захардкодженные входные данные – без использования параметризации и ключевого слова Example (рассмотрим его далее в этой статье)

Data Driven тестирование с использованием явной параметризации

  • Параметризация с использованием ключевого слова Examples и таблиц

Data Driven тестирование с использованием внешних файлов

  • Параметризация с использованием Excel файлов
  • Параметризация с использованием Json
  • Параметризация с использованием XML

Таблицы Examples содержат наборы данных, которые позволяют запустить один и тот же сценарий несколько раз, подставляя в него разные наборы данных (параметры).

Data Driven тестирование в SpecFlow

Попробуем реализовать написанный сценарий входа на сайт.

Проект на данный момент должен выглядеть приблизительно так:

specflow3-1

Обратите внимание: Два файла (SpecFlowFeature1.feature и SpecFlowFeature1Steps.cs) были удалены так как они рассматривались в целях ознакомления.

Напомню, что наш LogIn_Feature.feature файл выглядит так:

Тогда класс реализации LogIn_Steps.cs сценария будет иметь вид:

Для этого нам придется захардкодить UserName и Password, а именно:

1) Перейти в Feature-файл и изменить Username и Password как показано ниже:

When User enter ‘subscriber′ and ‘subscriberpassword′

Для этого выражения мы подставляем Username и Password с фича-файла, которые автоматически подтягиваются со Step Definition. В этот момент сценарий с нереализованным одним степом будет подсвечен:

specflow3-2
2) Теперь реализуем этот степ. Для этого вставьте курсор в эту строку и нажмите F-12. Должно открыться окно с реализацией метода-шаблона.

specflow3-3

Нажмите Yes для его генерации.

3) Теперь стоит скопировать код с предыдущего метода без параметров:

specflow_parameters1

4) На последнем шаге нам понадобится подставить значения переменных для параметров:

specflow_parameters2

5) Теперь нам остается выполнить тест в Test Explorer.

specflow_parameters3

На этом все. В следующей статье напишу о том, как делать параметризацию с использованием ключевого слова Example.

Подписывайтесь на рассылку и всем бобра! :)

Связанные статьи