Продължете към съдържанието
Начало » Блог » Какво представлява Gherkin

Какво представлява Gherkin

Gherkin е формализиран език за описание на поведения (behavior) на софтуерни системи, който се използва основно в контекста на BDD (Behavior-Driven Development). Той позволява да се дефинират тестови сценарии на разбираем за хора език, който обаче е достатъчно структуриран, за да може да бъде интерпретиран от автоматизирани тестови инструменти като Cucumber, SpecFlow, Behat и други.


Основна идея

Gherkin служи като мост между технически екипи и бизнес/не-технически заинтересовани страни, тъй като позволява писане на спецификации, които могат да се четат и разбират от всички участници в проекта.


Основен синтаксис

Сценариите в Gherkin използват предварително дефинирани ключови думи (на английски или други езици, включително български), като:

  • Feature: — Описва функционалността
  • Scenario: — Конкретен тестов случай
  • Given — Начално условие
  • When — Действие
  • Then — Очакван резултат
  • And / But — Допълнителни условия

Пример:

Функционалност: Вход в системата

Сценарий: Успешен вход с валидни данни
Дадено че потребителят се намира на страницата за вход
Когато въведе валидни потребителско име и парола
И натисне бутона "Вход"
Тогава трябва да бъде пренасочен към таблото
И да види съобщение за добре дошъл

Ползи от използването на Gherkin

  • Улеснена комуникация между технически и нетехнически участници
  • Избягване на недоразумения относно очакваното поведение
  • Автоматизация на тестове чрез свързване с инструменти като Cucumber
  • Подобрена документация, която живее заедно с кода

Ограничения

  • Не е подходящ за описване на твърде сложни логики с много условности
  • Изисква поддръжка и дисциплина, за да остане актуален и полезен
  • Не замества unit/integration тестове, а ги допълва