有人可以帮助我解决以下代码的问题。我的目的是能够在浏览器中打开一个新选项卡。脚本通过,但没有真正打开新选项卡
require 'selenium-webdriver'
@browser = Selenium::WebDriver.for :chrome
@browser.navigate.to "http://www.google.com"
body = @browser.find_element(:tag_name => 'body')
body.send_keys(:control, 't')
p "total number of windows"
p @browser.window_handles.length
p "printing window ids"
@browser.window_handles.each do |window|
p window
end
@browser.quit
答案 0 :(得分:2)
我最接近使用Chrome打开和管理新标签的方法是:
require 'selenium-webdriver'
driver = Selenium::WebDriver.for :chrome
driver.get 'http://www.google.com'
#Extract the link we want to go to
address = driver.find_element(:link_text, "Gmail").attribute('href')
#Open a new browser window
driver.execute_script( "window.open()" )
#Use the newest window
driver.switch_to.window( driver.window_handles.last )
driver.get 'http://yahoo.com'
答案 1 :(得分:0)
如果您使用的是Mac,请尝试:
body.send_keys(:command, 't')
而不是
body.send_keys(:control, 't')
请看这里:How to open a new tab using Selenium WebDriver with Java?