如果有办法知道哪种浏览器正在运行测试? 我计划在if statemente上使用它:
if $driver.kind_of? Selenium::WebDriver::Firefox
# some code
end
我已经尝试了" instance_of?"," is_a?"。并且有一些模块和类,如Selenium :: WebDriver :: Firefox :: Profile等。 可能是我在错误的轨道上......
答案 0 :(得分:0)
获取测试中当前使用的浏览器的非常简单的方法。 WebDriver以这种方式定义:
def setup
client = Selenium::WebDriver::Remote::Http::Default.new
client.timeout = 120
case $browserName
when "firefox"
$browser = Selenium::WebDriver.for(:firefox, :http_client => client)
when "chrome"
$browser = Selenium::WebDriver.for(:chrome, :http_client => client)
when "safari"
$browser = Selenium::WebDriver.for(:safari, :http_client => client)
when "IE"
$browser = Selenium::WebDriver.for(:internet_explorer, :http_client => client)
else
puts "ERROR: Wrong browser name!!"
end
$browser.get ""
$wait = Selenium::WebDriver::Wait.new(:timeout => 30)
end
因此,通过这个简单的语句,我可以获得Webdriver中定义的名称:
browser_name = $browser.browser.to_s
只是简单地
if browser_name == "firefox"
#some code
end