如何在 Java 中使用 Selenium WebDriver 打开一个新选项卡?

新手上路,请多包涵

如何使用 Java 中的 Selenium WebDriver(又名 Selenium 2)在现有的 Firefox 浏览器中打开一个新选项卡?

原文由 Bhakti Shah 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 779
2 个回答

下面的代码将在新选项卡中打开链接。

 String selectLinkOpeninNewTab = Keys.chord(Keys.CONTROL,Keys.RETURN);
driver.findElement(By.linkText("urlLink")).sendKeys(selectLinkOpeninNewTab);

下面的代码将打开一个空的新选项卡。

 String selectLinkOpeninNewTab = Keys.chord(Keys.CONTROL,"t");
driver.findElement(By.linkText("urlLink")).sendKeys(selectLinkOpeninNewTab);

原文由 Nagaraju Jampani 发布,翻译遵循 CC BY-SA 4.0 许可协议

仅适用于在 Ruby、Python 和 C# 绑定 (Selenium 2.33.0) 中寻找答案的任何其他人。

请注意,要发送的实际密钥取决于您的操作系统。例如,Mac 使用 CMD + T ,而不是 Ctrl + T。

红宝石

require 'selenium-webdriver'

driver = Selenium::WebDriver.for :firefox
driver.get('http://stackoverflow.com/')

body = driver.find_element(:tag_name => 'body')
body.send_keys(:control, 't')

driver.quit

Python

 from selenium import webdriver
from selenium.webdriver.common.keys import Keys

driver = webdriver.Firefox()
driver.get("http://stackoverflow.com/")

body = driver.find_element_by_tag_name("body")
body.send_keys(Keys.CONTROL + 't')

driver.close()

C#

 using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;

namespace StackOverflowTests {

    class OpenNewTab {

        static void Main(string[] args) {

            IWebDriver driver = new FirefoxDriver();
            driver.Navigate().GoToUrl("http://stackoverflow.com/");

            IWebElement body = driver.FindElement(By.TagName("body"));
            body.SendKeys(Keys.Control + 't');

            driver.Quit();
        }
    }
}

原文由 Yi Zeng 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题