4

我正在为Facebook编写代码,它从属性文件中获取URL,ID,密码,但登录后我暗示“Facebook希望显示通知 - 允许 - 阻止”如何在登录后使其成功它(A.)按下ESP或ALT + F4并关闭弹出窗口或(B.)查找通知并自行关闭它。这是我使用,但它不工作。任何帮助表示赞赏。如何关闭Chrome浏览器弹出窗口?

public void closePopup() throws InterruptedException{ 

    Thread.sleep(1000); 
    Actions action=new Actions(driver); 

    action.keyDown(Keys.ESCAPE).keyUp(Keys.ESCAPE).build().perform(); 
+0

您可以用'driver.switchTo()'开关等的popup.refer这个http://stackoverflow.com/questions/19403949/how-to-handle-pop-up-in-selenium-webdriver - 使用的Java。首先确保它是浏览器弹出窗口或基于窗口的弹出窗口。如果它是基于窗口的弹出窗口,则必须使用'Java robot api' – gihan

+0

也可参考此http://www.softwaretestinghelp.com/handle-alerts-popups-selenium -webdriver-selenium-tutorial-16/ – gihan

+0

我尝试使用driver.switchTo()。alert()。dismiss();但它说没有发现警报。我昨天的其他链接也没有解决方案似乎为我工作。我不知道这是一个铬浏览器弹出窗口或基于Windows的弹出窗口。我使用chromedriver.exe登录到Facebook后立即获得了它。弹出窗口阻止我完成我的任务。这是弹出窗口的外观链接。 http://stackoverflow.com/questions/38684175/how-to-click-allow-on-show-notifications-popup-using-selenium-webdriver –

回答

0

经过进一步的研究,我找到了我的答案。这是一个铬通知,所以这是解决我的问题所需的步骤。

 ChromeOptions ops = new ChromeOptions(); 
     ops.addArguments("--disable-notifications"); 
     System.setProperty("webdriver.chrome.driver", "./lib/chromedriver"); 
     driver = new ChromeDriver(ops); 
相关问题