繁体   English   中英

如何使用Selenium WebDriver在新选项卡中打开网页

[英]How to open a web page in a new tab with Selenium WebDriver

我是Selenium的新手。
我使用Java语言。
我想打开一个网页,在新标签中说http://google.com driver.get("http://google.com"); 正常,但在新窗口中将其打开。
我不想打开一个空白的新标签,我想使用我想要的URL( http://google.com )打开一个新标签
我在这里回答了如何在Java中使用Selenium WebDriver打开新选项卡? 但找不到适合我的解决方案。
可能吗?

潜在地,您可以将其移植到Java。 这是我创建一段时间后用于c#的扩展方法。 基本上,它使用本地javascript在目标浏览器(即_driver)中打开新标签:

public static void OpenTab(this IWebDriver driver, string url)
{
    var windowHandles = driver.WindowHandles;
    var script = string.Format("window.open('{0}', '_blank');", url);
    ((IJavaScriptExecutor)driver).ExecuteScript(script);
    var newWindowHandles = driver.WindowHandles;
    var openedWindowHandle = newWindowHandles.Except(windowHandles).Single();
    driver.SwitchTo().Window(openedWindowHandle);
}

用法:

var url = "http://google.com";
_driver.OpenTab(url);

稍作调整,看看您是否至少可以理解所使用的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM