我正在切换我的Watir / FireWatir脚本以使用watir-webdriver,需要在watir-webdriver中使用一种方法来确定当前正在执行测试的浏览器类型,(IE,FF,Chrome) )。
使用Watir / FireWatir查看浏览器的类将返回“Watir :: IE”或“FireWatir:Firefox”。使用该代码可以分支以执行特定于浏览器的代码。
在watir-webdriver中,浏览器的类始终为“Watir :: Browser”,运行IE,Firefox或Chrome时不会发生变化。
def is_ie?()
return self.class.to_s == "Watir::IE"
end
def is_firefox?()
return self.class.to_s == "FireWatir::Firefox"
end
if(browser.is_ie?)
# run the IE specific code
end
if(browser.is_firefox?)
# run the firefox specific code
end
提前致谢,
乔
答案 0 :(得分:10)
尝试
browser.driver.browser#=> :火狐
答案 1 :(得分:0)
谢谢,这正是我所需要的!
由于我正处于过渡状态,其中一些脚本移植到Watir-WebDriver,而另一些仍然需要在Watir / Firewatir下运行,我已经更新了mt方法,如下所示,发布它们以防其他人处于相同的情况。
def is_chrome?()
if(is_webdriver? == true)
return (self.driver.browser.to_s.downcase == "chrome")
else
return (self.class.to_s == "ChromeWatir::Browser")
end
端
def is_firefox?()
if(is_webdriver? == true)
return (self.driver.browser.to_s.downcase == "firefox")
else
return (self.class.to_s == "FireWatir::Firefox")
end
端
def is_ie?()
if(is_webdriver? == true)
return (self.driver.browser.to_s.downcase == "internet_explorer")
else
return (self.class.to_s == "Watir::IE")
end
端
def is_webdriver?()
if($LOADED_FEATURES.to_s =~/watir-webdriver/)
return true
else
return false
end
端