Abdullajon Php
Abdullajon Php

Reputation: 11

Choosing different browsers by creating class and methods(ruby,selenium,aptana)

beginner is here with a simple question.

Using Ruby with Selenium web-driver. Just wanted to make my life easier to make a reusable class that will return me a different webdrivers. Tried the below, but it did not work when I tried to call.

def Sel_drive
    def ff_drive
    return Selenium::WebDriver.for :firefox
    end
    def ie_drive
    return Selenium::WebDriver.for :ie
    end
    def chrome_drive
    return Selenium::WebDriver.for :chrome
    end
    def name_of_browser(browser_name)
    if browser_name == 'Firefox'
    driver = ff_drive
    end
    elsif browser_name == 'IE'
    driver = ie_drive
    else
     browser_name == 'Chrome'
     driver = chrome_drive
end

Upvotes: 1

Views: 172

Answers (1)

Richard
Richard

Reputation: 9029

You can use case to return the correct webdriver.

def Sel_drive(drive_type)
    case drive_type
    when "firefox"
        return Selenium::WebDriver.for :firefox
    when "ie"
        return Selenium::WebDriver.for :ie
    when "chrome"
        return Selenium::WebDriver.for :chrome
    else
        puts "Not a valid driver"
    end
end

driver = Sel_drive("firefox")

Upvotes: 1

Related Questions