Javascript Selenium WebDriver无法向InputBox发送文本

Javascript Selenium WebDriver无法向InputBox发送文本,javascript,java,selenium-webdriver,Javascript,Java,Selenium Webdriver,大家下午好 如何使用Selenium在警报框中输入登录名和密码 默认情况下,几秒钟后加载地址时,警报已显示: 已通过代码尝试: String exePath = "C:\\RegistroES\\Apoio\\IEDriverServer.exe"; System.setProperty("webdriver.ie.driver", exePath); WebDriver driver0 = new InternetExplorerDriver(); driver0.manage().windo

大家下午好

如何使用Selenium在警报框中输入登录名和密码

默认情况下,几秒钟后加载地址时,警报已显示:

已通过代码尝试:

String exePath = "C:\\RegistroES\\Apoio\\IEDriverServer.exe";
System.setProperty("webdriver.ie.driver", exePath);
WebDriver driver0 = new InternetExplorerDriver();
driver0.manage().window().maximize();
driver0.get("https://detrannet.es.gov.br/controleacesso/login.asp");

driver0.switchTo().activeElement().sendKeys("UsuarioA");
但是WebDriver似乎没有看到/识别该警报

请尝试:

driver0.switchTo().alert().sendKeys("UsuarioA")
driver0.switchTo().alert().accept()
尝试:


在我看来,此对话框类似于特定于本机/操作系统的“基本身份验证对话框”,如果您使用浏览器访问某些受限资源,它会弹出。虽然我不是100%确定-但如果是像我说的那样,那么我不知道您是否能够使用Selenium自动输入这些凭据,因为它不是您使用WebDriver访问的网站的一部分,并且因为此对话框没有由DOM树中的DOM元素表示,所以WebDriver无法访问。

在我看来,此对话框类似于本机/OS特定的“基本身份验证对话框”,如果您使用浏览器访问某些受限资源,会弹出此对话框。但我不是100%确定-但如果像我说的那样,那么我不知道您是否能够使用Selenium自动输入这些凭据,因为它不是您与WebDriver一起访问的网站的一部分,并且因为此对话框在DOM树中没有DOM元素,所以WebDriver无法访问。

相同的行为,WebDriver似乎无法将此警报识别为非典型警报,可能您需要在它们之间等待一段时间。Thread.sleep3000;同样的行为,似乎WebDriver无法将此警报识别为非典型警报,可能您需要在它们之间等待一段时间。Thread.sleep3000;看一看这段视频,看起来很有希望:哇,这段视频很有启发性,但在我的情况下不起作用,我通过自动热键进行了登录,谢谢看一看这段视频,看起来很有希望:哇,这段视频很有启发性,但在我的情况下不起作用,我通过自动热键进行了登录,谢谢