为了账号安全,请及时绑定邮箱和手机立即绑定

下载PDF时如何关闭Chrome浏览器中的下载弹出窗口

下载PDF时如何关闭Chrome浏览器中的下载弹出窗口

慕仙森 2021-09-03 13:52:03
我正在使用 java selenium 来自动化我的应用程序。我正在下载 PDF 和解析。我的应用程序中有多个带有 PDF 的测试用例。因此,一旦我下载第一个 PDF,chrome 会在浏览器底部显示一个弹出窗口,该文件以文件名下载,因此下次当我尝试下载第二个 PDF 时,下载按钮位于此弹出窗口下方,无法单击下载选项。使用 isDisplayed 方法检查返回 false 和 isEnabled 返回 true 的状态。尝试在另一个窗口中执行 PDF 测试用例它也不起作用。请参阅 POP 图像。
查看完整描述

3 回答

?
侃侃无极

TA贡献2051条经验 获得超10个赞

谢谢你找到了解决方案。我正在使用 Robot 类按下 Control 键和“J”(使用 Ctrl+J),这会在新选项卡中打开我的下载文件。在我使用 windowsHandle 关闭新窗口并导航回原始窗口之后.


//您下载文件的代码,下载文件后使用下面的代码


下面是我的代码


enter code here


         Robot bot =new Robot();

        Thread.sleep(1000);

         bot.keyPress(KeyEvent.VK_CONTROL);

         bot.keyPress(KeyEvent.VK_J);

         bot.keyRelease(KeyEvent.VK_CONTROL);

         bot.keyRelease(KeyEvent.VK_J);

        String winHandleBefore = driver.getWindowHandle();

      for(String winHandle : driver.getWindowHandles()){

        driver.switchTo().window(winHandle);


    }


查看完整回答
反对 回复 2021-09-03
?
HUX布斯

TA贡献1876条经验 获得超6个赞

另一种选择是使用可以控制 UI 对象的工具。其中之一是免费软件,是 Auto-It。它可以识别浏览器的下载\上传窗口,对其进行控制和关闭。您可以编写脚本、构建它 - 并从您的 Java 代码中 - 在下载\上传窗口打开时调用它。


查看完整回答
反对 回复 2021-09-03
?
Helenr

TA贡献1780条经验 获得超3个赞

据我所知,无法使用 Selenium/WebDriver 在 Chrome 上关闭下载面板。可能还有其他一些解决方案供您考虑。例如:


1. 使用动作链移动到要定位的元素org.openqa.selenium.interactions.Actions
2. 在新标签中下载,下载后关闭标签,那么原始标签没有下载栏。
3. 打开 chrome 下载页面(使用 Ctrl+J),然后关闭它并返回到您的主页,它没有下载栏。

可能有其他解决方案可用于此任务。


查看完整回答
反对 回复 2021-09-03
  • 3 回答
  • 0 关注
  • 691 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信