【问题标题】:Click on pop up/ alert to launch web app using selenium单击弹出窗口/警报以使用 selenium 启动 Web 应用程序
【发布时间】:2021-03-26 12:51:42
【问题描述】:

目前在我的测试中,当我选择一个按钮时,会出现一个弹出窗口,要求我启动我的 Web 应用程序

但是我似乎无法像窗口一样切换到此弹出窗口

    new WebDriverWait(driver,5).until(ExpectedConditions.numberOfWindowsToBe(2));


    Set<String> allHandles = driver.getWindowHandles();
    for(String winHandle:allHandles)
    {
        if (!first_handle.equalsIgnoreCase(winHandle))
        {
            driver.switchTo().window(winHandle);
        }
    }

我也尝试将其作为警报接受,但它没有将其识别为警报

Alert alert = driver.switchTo().alert();
// Alert present; set the flag
presentFlag = true;
// if present consume the alert
alert.accept();

我看到了禁用通知的建议,但它们也不起作用,我的主要目的是选择打开按钮,但我也无法从控制台中选择任何元素

【问题讨论】:

  • HTML 表示会很有帮助。请添加。
  • 我无法访问 html,这就是问题
  • 无法打开浏览器的开发工具?
  • 开发工具中无法访问警报/弹出窗口

标签: selenium selenium-webdriver web automated-tests jave


【解决方案1】:

您可能需要通过添加选项在 WebDriver 级别禁用 selenium Web 驱动程序的通知。以下是如何为 ChromeDriver 执行此操作的示例:

ChromeOptions options = new ChromeOptions();
options.addArguments("--disable-notifications");
System.setProperty("webdriver.chrome.driver", "/home/users/user.user/Desktop/softwares/chromedriver");
WebDriver driver =new ChromeDriver(options);
driver.get("http://your.url/");
driver.manage().window().maximize();
    

【讨论】:

    猜你喜欢
    • 2018-07-15
    • 2020-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多