Създайте своя първи Cucumber Скрипт (2 примера)
⚡ Умно обобщение
Cucumber Изпълнението на скриптове ви помага да превърнете сценариите на Gherkin, написани на разбираем език, в изпълними автоматизирани тестове, използвайки файлове с дефиниции на стъпки, което позволява на екипите да валидират поведението, да споделят намеренията си между заинтересованите страни и да доставят надеждни проекти, базирани на BDD. Cucumber or Cucumber-JVM.

В този урок ще създадете Cucumber Скриптове за тестване на два сценария, използващи синтаксис на Gherkin и файлове за дефиниране на стъпки. Cucumber е популярна BDD рамка, която свързва Feature файлове на обикновен език с изпълним тестов код, така че бизнес анализаторите и разработчиците да могат да си сътрудничат по едни и същи спецификации.
Cucumber Сценарий 1: Умножение 2 Numbers
В това първо Cucumber Например, ще напишете прост файл с функции, който умножава две числа, и след това ще създадете съответстващ файл с дефиниции на стъпки в Ruby. Същият работен процес се прилага, ако използвате Cucumber-JVM 7.x с Java или Котлин в IntelliJ IDEA.
Стъпка 1) Отворете редактора на RubyMine чрез Windows старт меню.
Стъпка 2) В редактора на RubyMine щракнете върху „Създаване на нов проект“.
Стъпка 3) Изберете местоположението на проекта и щракнете върху „Създаване“.
Стъпка 4) Създайте файлова директория в корена на проекта за вашите Feature файлове.
Стъпка 5) Наименувайте директорията като „характеристики“. Cucumber ще сканира тази папка автоматично.
Стъпка 6) Създайте и запазете файл в „yourfolder/features/“ с име „yourfilename.feature“.
Кликнете тук ако видеото не е достъпно
Стъпка 7) За да изпълните сценария, запазете следната програма във файла Feature. Обърнете внимание как ключовите думи на Gherkin, като Feature, Scenario, Given, When и Then, описват поведението на теста.
Code:
Feature: Multiplication
I multiply two numbers
Scenario: multiply a and b
Given I have variable a
And I have variable b
When I multiplication a and b
Then I display the Result
Стъпка 8) Сега стартирайте първия си Feature файл.
Кликнете върху „Стартиране на командния ред с Ruby“.
Полученият резултат е показан по-долу.
Ще видите грешка, защото трябва да напишете файл за дефиниране на стъпка, който се сдвоява с файла с функции.
Стъпка 9) Създайте файл с дефиниции на стъпки за вашия файл с функции.
Създайте нова папка в редактора на RubyMine с име „step_definition“.
Стъпка 10) Запазете файла в „yourfolder/features/step_definitions“ с име test_step.rb.
Стъпка 11) Напишете следния код във файла Step Definition. Всеки блок се съпоставя със стъпка Gherkin от файла Feature.
Code :
Given(/^I have variable a$/) do
@a = 50
end
And(/^I have variable b$/) do
@b = 70
end
When(/^I multiplication a and b$/) do
@mul = @a * @b
end
Then(/^I display the Result$/) do
puts "Multiplication of #{@a} and #{@b} is #{@mul}"
end
Стъпка 12) Стартирайте файла Feature отново.
Резултатът е показан по-долу.
Cucumber Скрипт 2: Проверете изхода, когато имейл адресът е въведен или не е въведен
Във втория пример ще използвате Ruby с Watir да управлява браузър и да валидира два сценария за регистрация на Guru99 демонстрационен сайт. Същите модели важат и ако приемете Cucumber-JVM 7.x с Selenium Уеб драйвер и Java.
В този пример използваме Руби.
Сценарий на тестаПроверка на изхода, когато имейл адресът НЕ е въведен.
Стъпки на теста:
- Отворете браузъра
- Отидете в https://demo.guru99.com/
- Do не въведете имейл адрес
- Кликнете върху Изпращане
Сценарий на тестаПроверка на изхода при въвеждане на имейл адрес.
Стъпки на теста:
- Отворете браузъра
- Отидете в https://demo.guru99.com/
- Въведете имейл адрес
- Кликнете върху Изпращане
Code във файла с функции:
Feature: guru99 Demopage Login To Login in Demopage we have to enter login details Scenario: Register On Guru99 Demopage without email Given I am on the Guru99 homepage When enter blank details for Register Then error email shown Scenario: Register On Guru99 Demopage with valid email Given I am on the Guru99 homepage When enter details for Register Then login details shown
Code във файла с дефиниции на стъпки:
require 'watir-webdriver'
require 'colorize'
browser = Watir::Browser.new
Given (/^I am on the Guru99 homepage$/)do
browser.goto "https://demo.guru99.com"
end
When (/^enter blank details for Register$/)do
browser.text_field(:name,"emailid").set(" ")
browser.button(:name,"btnLogin").click
end
Then (/^error email shown$/)do
puts " Email is Required".red
browser.close
end
When (/^enter details for Register$/)do
browser = Watir::Browser.new
browser.goto "https://demo.guru99.com"
browser.text_field(:name,"emailid").set("<a href="mailto:guru99@gmail.com">guru99@gmail.com</a>")
browser.button(:name,"btnLogin").click
end
Then (/^login details shown$/)do
puts " Sucessfully register"
browser.close
end
Изпълнете кода в командния ред и ще видите следния изход.


















