Мова корнішону: Формат, синтаксис & Проба огірків на огірку

Зміст:

Anonim

Що таке мова корнішонів?

Корнішон - це зрозуміла для бізнесу мова, яка допомагає описувати ділову поведінку, не вдаючись до деталей реалізації. Це спеціальна для домену мова для визначення тестів у форматі Cucumber для специфікацій. Він використовує просту мову для опису випадків використання та дозволяє користувачам видаляти логічні деталі з тестів поведінки.

Текст на мові herеркіна діє як документація та скелет ваших автоматизованих тестів. Формат корнішону заснований на Граматиці TreeTop, яка існує понад 37 мов. Тому ви можете написати свій корнішон понад 37 розмовними мовами.

Цей сценарій виконує дві основні цілі:

  • Документи сценаріїв користувача
  • Написання автоматизованого тесту (BDD)

У цьому підручнику з огірків ви дізнаєтесь

  • Що таке мова корнішонів?
  • Чому саме Корнішон?
  • Синтаксис корнішонів
  • Важливі терміни, що використовуються у Корнішона
  • Приклад корнішонів
  • Кращі практики використання корнішону
  • Переваги Корнішона

Чому саме Корнішон?

Потребу в Корнішоні можна легко пояснити наступними зображеннями

До Корнішона

Після Корнішона

Синтаксис корнішонів

Корнішон - це орієнтована на рядки мова, подібно до YAML та Python. Кожен рядок називається кроком і починається з ключового слова, а кінець терміналів зупиняється. Для відступу використовується табуляція або пробіл.

У цьому сценарії коментар можна додати куди завгодно, але він повинен починатися зі знака #. Він читає кожен рядок після видалення ключових слів Грекіна, як дано, коли, потім тощо.

Типові сходинки корнішону виглядають так:

Сценарії корнішону: пов’язує людську концепцію причинно-наслідкових наслідків із програмною концепцією введення / процесу / виводу.

Синтаксис корнішону:

Особливість: Назва сценаріюДано [Передумови або початковий контекст]Коли [Подія або тригер]Потім [очікуваний вихід]

Документ Корнішона має розширення .feature і просто просто тестовий файл із вигадливим розширенням. Огірок читає документ Геркін і виконує тест, щоб підтвердити, що програмне забезпечення поводиться відповідно до синтаксису Корнішона.

Важливі терміни, що використовуються у Корнішона

  • Особливість
  • Передумови
  • Сценарій
  • Дано
  • Коли
  • Потім
  • І
  • Але
  • Приклади конспекту сценарію

Конвенція про іменування використовується для імені функції. Однак в Огірку немає встановлених правил щодо імен.

Характеристика:

Файл повинен мати розширення .feature, і кожен файл функцій повинен мати лише одну функцію. Ключове слово об’єкта, що має функцію: і після цього додавання буде записано пробіл та ім’я об’єкта.

Сценарій:

Кожен файл функції може мати кілька сценаріїв, і кожен сценарій починається зі сценарію: за яким слід сценарій.

Передумови:

Фонове ключове слово допомагає додати контекст до сценарію. Він може містити кілька етапів сценарію, але єдина відмінність полягає в тому, що його слід запускати перед кожним сценарієм.

Дано:

Використання даного ключового слова полягає у приведенні системи до звичного стану перед тим, як користувач почне взаємодіяти з системою. Однак ви можете пропустити написання взаємодії з користувачем у заданих кроках, якщо вказано в кроці "Передумова".

Синтаксис:

Дано
Дано - тестовий крок, який визначає 'контекстВраховуючи, що я перебуваю на "/".

Коли:

Коли крок полягає у визначенні дії, що виконується користувачем.

Синтаксис:

Коли
A When - тестовий крок, який визначає виконану «дію»Коли я виконую "Вхід".

Потім:

Використання ключового слова 'then' полягає в тому, щоб побачити результат після дії в кроці, коли. Однак перевірити можна лише помітні зміни.

Синтаксис:

 Потім
Потім - крок тесту, який визначає „результат”.Тоді я повинен побачити "Ласкаво просимо Томе".

І & Але

Можливо, вам було дано кілька, коли або тоді.

Синтаксис:

Але
Але - додатковий тестовий крок, який визначає результат "дії".Але я повинен побачити "Ласкаво просимо Томе".
І - додатковий крок тесту, який визначає виконану «дію»І я пишу " Адреса електронної пошти " з написом " Ця електронна адреса захищена від спам-ботів. Вам потрібно увімкнути JavaScript, щоб переглянути її ..."

Дано, Коли, Тоді та, але є кроками тесту. Ви можете використовувати їх як взаємозамінні. Інтерпретатор не відображає помилок. Однак вони, безумовно, не матимуть жодного "сенсу" при читанні.

Важливі терміни, що використовуються у Корнішона

З огляду на сторінку входу відкриваєтьсяКоли я вводжу ім’я користувача, пароль і натискаю кнопку ВхідТоді я на домашній сторінці

Приклади корнішонів

Приклад 1:

Характеристика: Функціональність входу на сайт соціальних мереж Facebook.Дано: Я користувач facebook.Коли: Я ввожу ім’я користувача як ім’я користувача.І я ввожу пароль як парольТоді мене слід перенаправити на домашню сторінку facebook

Згаданий вище сценарій стосується функції, яка називається вхід користувача.

Усі слова, написані жирним шрифтом, є ключовими словами для огірків.

Корнішон проаналізує кожен крок, записаний у файлі визначення кроку. Отже, кроки вказані у файлі функції, і файл визначення кроку повинен збігатися.

Приклад 2:

Характеристика: Фон аутентифікації користувача:Враховуючи, що користувач вже зареєстрований на веб-сайті Сценарій:Враховуючи, що користувач знаходиться на сторінці входуКоли користувач вводить правильну адресу електронної поштиІ користувач вводить правильний парольІ користувач натискає кнопку ВхідПотім користувача слід аутентифікуватиІ користувача слід перенаправити на свою інформаційну панельІ користувачеві слід подати повідомлення про успіх

Кращі практики використання корнішону

  • Кожен сценарій повинен виконуватися окремо
  • Кожна функція повинна бути виконана разом
  • Інформацію про кроки слід показувати самостійно
  • Пов’яжіть свої сценарії зі своїми вимогами
  • Дотримуйтесь повного відстеження того, які сценарії повинні бути включені в документ вимог
  • Створюйте модульні та зрозумілі кроки
  • Спробуйте поєднати всі ваші загальні сценарії

Переваги Корнішона

  • Корнішон досить простий для розуміння непрограмістами
  • Програмісти можуть використовувати його як дуже надійну основу для початку своїх тестів
  • Це полегшує засвоєння історій користувачів
  • Скрипт корнішону легко зрозуміти керівникам підприємств та розробникам
  • Тестування на корнішон орієнтоване на бізнес-вимоги
  • Значна частина функціональних специфікацій написана як історія користувача
  • Вам не потрібно бути експертом, щоб зрозуміти невеликий набір команд огірків
  • Тести на огірки Геркіна пов'язують приймальні тести безпосередньо з автоматизованими тестами
  • Стиль написання тестових кейсів простіше повторно використовувати код в інших тестах

Недоліки Корнішона

  • Це вимагає високого рівня залучення бізнесу та співпраці
  • Може не працювати добре в усіх сценаріях
  • Погано написані тести можуть легко збільшити витрати на обслуговування тестів

Короткий зміст:

  • Корнішон - це формат специфікацій огірків
  • Корнішон - це орієнтована на рядки мова, подібно до YAML та Python
  • Gherkin Scripts пов'язує людську концепцію причинно-наслідкових наслідків із програмною концепцією введення / процесу та результату
  • Характеристика, передісторія, сценарій, дані, коли, тоді і, але важливо вживаються в Корнішоні
  • У Корнішона кожен сценарій повинен виконуватися окремо
  • Найбільша перевага Геркіна досить проста для розуміння непрограмістів
  • Тест на огірок Геркіна може не спрацювати добре у всіх типах сценаріїв