我正在使用 Selenium-Firefox-driver 和 Selenium-Chrome-Driver 2.0a5 版( Web Driver API ),我正在尝试测试具有 BASIC 身份验证的 Web 应用程序(当我点击了任何页面,弹出窗口不是 HTML 的一部分)。
现在,我需要一个策略来验证 Firefox、Chrome 和 IE 中的用户(我将很快导入 IE 驱动程序)。
我在几篇文章中读到我可以设置 Firefox 配置文件,例如..类似于:
FirefoxProfile ffProfile = new FirefoxProfile();
ffProfile.setPreference("network.http.phishy-userpass-length", 255);
WebDriver driver = new FirefoxDriver(ffProfile);
driver.get("http://username:password@hostname");
但它似乎对我不起作用。有没有人有适用于这些浏览器的有效解决方案?
原文由 sebarmeli 发布,翻译遵循 CC BY-SA 4.0 许可协议
是的,目前不支持 BASIC HTTP 身份验证,但我现在可以在 FF 和 Chrome 上使用它。
我在问题中编写的代码适用于这些驱动程序。我只是尝试使用 FF3.6 作为 Firefox 默认浏览器(安装在 Firefox 文件夹中)而不是 FF4(尚不支持)。对于 IE,我可能会尝试通过 Windows 注册表禁用身份验证。
此页面 http://code.google.com/p/selenium/issues/detail?id=34 可能会有所帮助。