操作系统:Windows 10,Server 2012
浏览器:Chrome
版本:65.0.3325.181(官方版)(64位)
网络驱动程序:2.36
Dotnet Framework:4.6
在我的应用程序中,我使用窗口AD进行身份验证。每当我在Chrome浏览器中打开应用程序时,它都要求进行身份验证,并且登录弹出窗口(附带的屏幕截图)会打开。在弹出窗口中,我输入我的凭证并单击登录按钮。成功登录后,我可以访问我的应用程序。在自动化中期望相同的行为。
同样的事情我在selenium驱动程序的帮助下实现了自动化。我曾经使用selenium web驱动程序2.34用于Chrome和Chrome版本是64,这种组合登录功能工作正常。现在我最近将网页驱动程序升级到2.36,将Chrome升级到65,发布此升级登录功能无效。现在处于应用程序时,登录弹出窗口打开,应用程序等待用户输入 我正在使用自动热键“WindowsAuthenticationChrome”输入凭据,现在应用程序在driver.url =“some url”线程被阻止,无法启动自动热键,并且在一段时间后抛出命令超时异常。当我手动输入凭证或关闭弹出线程时,释放并执行下一行代码。
版本升级后会出现此问题。
创建示例控制台应用程序
class Program
{
static void Main(string[] args)
{
string[] arguments = new string[] { "no-sandbox", "test-type", "ignore-certificate-errors", "disable-popup-blocking" } ;
var chromeOptions = new ChromeOptions() { BinaryLocation = @"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" };
chromeOptions.AddArguments(arguments);
var chromedriver = new ChromeDriver(@"C:\TestCases\Drivers", chromeOptions, new System.TimeSpan(0, 10, 0));
//chromedriver.Url = "actual url" login pop-up window come;
chromedriver.Url = "https://www.google.co.in/";
}
}
在示例代码中,我正在创建具有某些功能的Web驱动程序对象,当我尝试打开我的应用程序URL时,登录弹出窗口代码会在一段时间之后挂起,它会抛出命令超时异常但是当我'我试图打开简单的页面(“https://www.google.co.in”),其中弹出窗口不会出现代码正常工作。
任何帮助都会感激不尽!