Selenium打开多个选项卡不工作
我已经尝试过用这个代码片段在Firefox的多个选项卡中自动打开同一个url“google.com”。但它仍然只能在新窗口中打开。因为我只想打开那个url,所以我不想让句柄来回切换 你能帮我找出我的代码有什么问题吗:Selenium打开多个选项卡不工作,selenium,Selenium,我已经尝试过用这个代码片段在Firefox的多个选项卡中自动打开同一个url“google.com”。但它仍然只能在新窗口中打开。因为我只想打开那个url,所以我不想让句柄来回切换 你能帮我找出我的代码有什么问题吗: public class MultipleTabsWebinar { public static void main(String[] args) throws InterruptedException{ List drivers = new ArrayList();
public class MultipleTabsWebinar {
public static void main(String[] args) throws InterruptedException{
List drivers = new ArrayList();
for(int i = 0; i < 5; i++){
WebDriver driver;
System.setProperty("webdriver.gecko.driver", "C:\\geckodriver-v0.11.1-win64\\geckodriver.exe");
System.out.println("Hello World Test on AMS148");
driver = new FirefoxDriver();
driver.get("http://10.3.3.148");
Thread.sleep(100);
driver.findElement(By.cssSelector("body")).sendKeys(Keys.CONTROL +"t");
drivers.add(driver);
}
for(int i = 0; i < drivers.size(); i++){
((WebDriver) drivers.get(i)).close();
}
}
公共类MultipleTablesWebinar{
公共静态void main(字符串[]args)引发InterruptedException{
列表驱动程序=新的ArrayList();
对于(int i=0;i<5;i++){
网络驱动程序;
System.setProperty(“webdriver.gecko.driver”,“C:\\geckodriver-v0.11.1-win64\\geckodriver.exe”);
System.out.println(“AMS148上的Hello World测试”);
驱动程序=新的FirefoxDriver();
驱动程序。获取(“http://10.3.3.148");
睡眠(100);
driver.findElement(通过.cssSelector(“body”)).sendKeys(Keys.CONTROL+“t”);
驱动程序。添加(驱动程序);
}
对于(int i=0;i
}您可以尝试以下代码:
JavascriptExecutor jse = (JavascriptExecutor)driver;
for(int i = 0; i < 15; i++)
{
jse.executeScript("window.open('https://google.com');");
}
JavascriptExecutor jse=(JavascriptExecutor)驱动程序;
对于(int i=0;i<15;i++)
{
jse.executeScript(“window.open('https://google.com');");
}
这将允许您在多个新选项卡中打开Google搜索页面
请注意(如评论中所述),您不需要在循环中初始化
WebDriver
实例每次迭代都会打开一个新的单独浏览器实例。谢谢,但是我如何打开15个选项卡并在所有15个选项卡中转到上面的url?不要在每次迭代中实例化一个新的WebDriver,但是共享一个实例。代码的其余部分应该可以(发送组合键是打开新选项卡的唯一方法)。