如何使用 Java 在 selenium webdriver 中打开新选项卡,或者如何使用 selenium webdriver 使用动作类在 selenium 中按 ctrl +T [重复]
·
问题:如何使用 Java 在 selenium webdriver 中打开新选项卡,或者如何使用 selenium webdriver 使用动作类在 selenium 中按 ctrl +T [重复]
如何使用 Java 在 Selenium Webdriver 中按 CTRL+T。或者如何使用 Java 在 selenium webdriver 中打开新选项卡。
[简单步骤:1.打开google.com[不必触摸页面的任何元素/链接]2.打开新标签3.打开yahoo.com
我尝试过动作课,但它不起作用
driver.get("http://www.google.com");
driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
System.out.println(driver.getTitle());
Actions act = new Actions(driver);
act.keyDown(Keys.CONTROL).sendKeys("t").keyUp(Keys.CONTROL).build().perform();
driver.get("http://www.yahoo.com/");
System.out.println(driver.getTitle());
driver.quit();
解答
我尝试使用 javascript 和机器人类。希望对你有帮助..
JavaScript
driver.get("http://www.google.com/");
driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
//Open new tab
JavascriptExecutor jse = (JavascriptExecutor)driver;
jse.executeScript("window.open()");
//Switch to new tab
ArrayList<String> tabs = new ArrayList<String> (driver.getWindowHandles());
driver.switchTo().window(tabs.get(1));
driver.get("http://www.yahoo.com/");
机器人类
WebDriver driver = new ChromeDriver();
driver.get("http://www.google.com");
driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
System.out.println(driver.getTitle());
//Robot Class
Robot r = new Robot();
r.keyPress(KeyEvent.VK_CONTROL);
r.keyPress(KeyEvent.VK_T);
r.keyRelease(KeyEvent.VK_CONTROL);
r.keyRelease(KeyEvent.VK_T);
//Switch to new tab
ArrayList<String> tabs = new ArrayList<String> (driver.getWindowHandles());
driver.switchTo().window(tabs.get(1));
driver.get("http://www.yahoo.com/");
System.out.println(driver.getTitle());
更多推荐

所有评论(0)