如何使用Selenium WebDriver处理身份验证弹出窗口

时间:2019-07-16 20:58:38

标签: selenium authentication selenium-webdriver popup

我正在尝试通过在URL中传递用户名和密码来通过硒测试处理身份验证弹出窗口。

我尝试了以下解决方案:

  1. 我试图通过URL发送用户名和密码
  2. 我尝试处理警报,但不起作用。
  3. 我尝试了-How to handle authentication popup with Selenium WebDriver using Java中提供的解决方案,除AutoIT以外几乎所有其他解决方案,都没有一个适合我

我有一个Maven项目,我正在尝试从project.properties文件发送带有用户名和密码的url,它看起来像这样-

URL = https://username:password@URL

打开网址代码-

WebDriver驱动程序=新的C​​hromeDriver();

driver.navigate.to(URL);

我在浏览器控制台中遇到以下错误: “您的提取操作存在问题:无法在“窗口”上执行“提取”:无法从包含凭据的URL构造请求”

1 个答案:

答案 0 :(得分:1)

我能够使用AutoIT脚本来处理此问题。 脚本看起来像这样,

WinWaitActive(“登录”)

睡眠(5000)

发送(“用户名”)

发送(“ {TAB}”)

发送(“密码”)

发送(“ {ENTER}”)

我通过我的代码运行此脚本,

WebDriver驱动程序=新的C​​hromeDriver();

Runtime.getRuntime()。exec(“(path)\ AutoIt \ script.exe”);

driver.get(prop.getProperty(URL));

driver.navigate()。refresh();