如何使用热键关闭selenium中的浏览器?

时间:2016-12-22 08:46:05

标签: java selenium selenium-webdriver

  

Selenium Webdriver v-3.0.1

我想使用热键关闭浏览器窗口,我尝试了一个接一个的方法,但根本没有工作 -

driver.findElement(By.tagName("body")).sendKeys(Keys.chord(Keys.CONTROL+"w"));

driver.findElement(By.tagName("body")).sendKeys(Keys.chord(Keys.CONTROL+"F4"));

driver.findElement(By.tagName("body")).sendKeys(Keys.chord(Keys.CONTROL,Keys.F4));

driver.findElement(By.tagName("body")).sendKeys(Keys.CONTROL, Keys.F4);

driver.findElement(By.tagName("body")).sendKeys(Keys.CONTROL+"F4");

如何关闭除driver.close()driver.quit方法

之外的浏览器

3 个答案:

答案 0 :(得分:6)

确保浏览器窗口处于活动状态。

您可以执行操作

ExpiryDate.xml.deploy

使用Actions actions = new Actions(driver); actions.keyDown(Keys.ALT); actions.sendKeys(Keys.F4); actions.keyUp(Keys.ALT); actions.perform(); 可以实现同样的目标。 要运行此代码,您需要添加

Robot

如果在程序结束时未使用import java.awt.Robot; Robot robot = new Robot(); // press key Alt+F4 robot.keyPress(KeyEvent.VK_ALT); robot.delay(100); robot.keyPress(KeyEvent.VK_F4); // relase key Alt+F4 robot.delay(100); robot.keyRelease(KeyEvent.VK_F4); robot.delay(100); robot.keyRelease(KeyEvent.VK_ALT); driver.quit()会话将无法正常关闭,文件将无法从内存中清除。这可能会导致内存泄漏错误。 希望很清楚。

答案 1 :(得分:0)

假设您已经打开了一个标签,可以尝试以下方法:

driver.findElement(By.xpath("/html/body")).sendKeys(Keys.CONTROL+"w");

答案 2 :(得分:0)

Actions actions = new Actions(driver);
String killBrowser= Keys.chord(Keys.ALT, Keys.F4);
actions.sendKeys(killBrowser);
actions.perform();

试试这个。