我是Selenium的新手
我使用Java
语言
我想打开一些网页,在新标签中说http://google.com。
driver.get("http://google.com");
可以正常工作,但可以在新窗口中打开它
我不想打开一个空的新标签页,我想打开一个包含我想要的网址的新标签页(http://google.com)
我在这里找到了答案How to open a new tab using Selenium WebDriver with Java?,但找不到合适的,为我工作的解决方案
有可能吗?
答案 0 :(得分:2)
潜在地,您将能够将其移植到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);
给它一个旋转,看看你是否至少可以在游戏中找到方法。