Cucumber
Transcript of Cucumber
![Page 1: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/1.jpg)
Что такое огурец?
Кулинич Наталья,QASQUAD
![Page 2: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/2.jpg)
Что такое Cucumber?
Cucumber (Wikipedia) -
приложение для запуска
автоматических приемочных
тестов, написанных в стиле BDD.
![Page 3: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/3.jpg)
Установка Cucumber
Сначала надо установить Ruby и
RubyGems, а затем выполнить
команду для установки Cucumber
gem install cucumber
![Page 4: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/4.jpg)
Пример Feature
Feature: In order to check a calculator As a regular user I want ...Scenario: Checking that calc works fine// StepsScenario: Checking something else// Steps
![Page 5: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/5.jpg)
Пример Сценария
Scenario: Checking that calc works fineGiven I have a calculatorWhen I press 5And I press +And I press 6And I press =Then I should see 11
![Page 6: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/6.jpg)
Как работает Cucumber
Cucumber
Щюнхишрр StepDefinitions1 2
When I press 5When /^I press (\d+)$/ do |digit| @calculator.pressed digitend
@calculator.pressed digit
3
@calculator.value.should == expected_value
![Page 7: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/7.jpg)
Синтаксис Шаблоны сценариев.
Scenario Outline: testing different calculatorsGiven I have a calculator "<calculator brand>"When I press 5+5=Then I should see <result>
Examples:|calculator brand|result||Casio |10 ||Sony |10 ||Broken One |5 |
![Page 8: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/8.jpg)
Как готовить Cucumber
Шаг 1. Пишем сценарий.
Scenario: Check the calc button "5" Given I have a calculator When I press 5 Then I should see 5
![Page 9: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/9.jpg)
Как готовить CucumberШаг 2. Реализовываем step definitions
Given /^I have a calculator$/ do @calc = Calculator.newend
When /^I press (\d+)$/ do |digit| @calc.pressed digitend
Then /^I should see (\d+)$/do |value| @calc.screenvalue.should == valueend
![Page 10: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/10.jpg)
Как готовить CucumberШаг 3. Пишем код.class Calculator def initialize @screen = "" end def pressed digit @screen += digit end def screenvalue @screen endend
![Page 11: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/11.jpg)
Как готовить CucumberШаг 4. Запускаем и радуемся.
Scenario: Check the calc button "5" Given I have a calculator When I press 5 Then I should see 5
1 scenario (1 passed)3 steps (3 passed)0m0.033s
![Page 12: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/12.jpg)
Наглядный результат Различные форматы отчетов (HTML, PDF, сonsole, свой формат)
![Page 13: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/13.jpg)
![Page 14: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/14.jpg)
Тестирование web-продукта
Для тестирования программы в браузере необходимо подключение нескольких модулей: 1. Библиотека Watir
2. Паттерн Page Object
![Page 15: Cucumber](https://reader033.fdocument.pub/reader033/viewer/2022060200/559869b91a28ab1a0b8b4602/html5/thumbnails/15.jpg)
СсылкиСайт проекта:cukes.info
Wiki проекта:github.com/cucumber/cucumber/wiki
Огурец для ниндзя (Рекомендовано!):cuke4ninja.com