Ruby language has the following advantages −
- It is easy to understand.
- It is an object-oriented language.
- It is a powerful class library.
- It has massive online support.
Following is the step-by-step process of how Cucumber works with Ruby.
Step 1 − Install Ruby.
- Go to RubyInstaller download page.
- Download the version best suited for your operating system (i.e. 32 or 64 bit).
- Run the downloaded exe.
- During the installation, tick the option “Add Ruby…” and “Associate …”, as shown in the following image.
Step 2 − Download and extract Dev kit.
- Go to RubyInstaller download page.
- Download the Devkit version best suited for your operating system (i.e. 32 or 64 bit).
- Extract the devkit at c:\Ruby\Devkit folder.
- Open the command prompt.
- Inside the Ruby devkit, run the following command.
C:\Ruby\devkit> ruby dk.rb init C:\Ruby\devkit> ruby dk.rb install
Step 3 − Install Cucumber and other Ruby gem.
- To install Cucumber, first update the current gem setup
C:\Users\Admin> gem update –system
- Next, install the gems you need for Cucumber web testing.
C:\Users\Admin> gem install --no-ri --no-rdoc rspec C:\Users\Admin> gem install --no-ri --no-rdoc win32console C:\Users\Admin> gem install --no-ri --no-rdoc watir-webdriver C:\Users\Admin> gem install --no-ri --no-rdoc cucumber
- Run Cucumber
C:\Users\Admin\Documents>cucumber –init C:\Users\Admin\Documents>cucumber
Step 4 − Install IDE – KOMODO.
- Go to the page http://www.activestate.com/komodo-ide/downloads
- Download the free trial installer.
- Double-click on the downloaded exe.
- Follow the installation steps.
- Finish the installation and open the IDE.
Step 5 − Install Watir − Go to command prompt and run the following command, “gem install watir”
Step 6 − Install rspec − Go to command prompt and run the following command, “gem install rspec”
Step 7 − Create feature file.
- Open KOMODO editor.
- Click on new file icon.
- Write the following text.Feature: Users must be able to search for content using Google.Scenario: Search for a term.Given I have entered “watir” into the query.When I click “search”Then I should see some results
- Click save icon.
- Give the name as CucumberRuby.feature.
- Choose any folder, for example: “e:\WithRuby”
- Save the file.
Step 8 − Create step definition file.
- Open KOMODO editor.
- Click ‘New’ file icon.
- Write the following code.
require "watir-webdriver" require "rspec/expectations" Given /^I have entered "([^"]*)" into the query$/ do |term| @browser ||= Watir::Browser.new :firefox @browser.goto "google.com" @browser.text_field(:name => "q").set term end When /^I click "([^"]*)"$/ do |button_name| @browser.button.click end Then /^I should see some results$/ do @browser.div(:id => "resultStats").wait_until_present @browser.div(:id => "resultStats").should exist @browser.close End
- Click save icon.
- Give the name as CucumberRuby.rb
- Choose any folder for example: “e:\WithRuby”
- Save the file.
Step 9 − Create the test file.
- Open KOMODO editor.
- Click on ‘New’ file icon.
- Write the following code.
require "rubygems" require "test/unit" require "watir-webdriver" class GoogleSearch < Test::Unit::TestCase def setup @browser ||= Watir::Browser.new :firefox end def teardown @browser.close end def test_search @browser.goto "google.com" @browser.text_field(:name => "q").set "watir" @browser.button.click @browser.div(:id => "resultStats").wait_until_present assert @browser.title == "watir - Google Search" end end
- Click Save icon.
- Name the file as test.rb and choose any folder for example: “e:\WithRuby”
- Save the file.
Step 10 − Run the feature file.
- Go to command prompt.
- Go to directory e:\WithRuby
- Run the following command.
e:\With Ruby>ruby test.rb
You will observe the following things upon execution −
- A web browser instance will open.
- Google.com webpage will get loaded.
- Search text watir will be entered.
- Search button will be placed.
- Search results shall be displayed on the webpage.
- Browser instance will get closed.