让Selenium通过.htaccesspopuplogin

我在linux上使用Java的WebDriver(Selenium2)。 我使用WebDriver自动填写表单并提交。 我面临着与htaccess网站的问题,即我无法通过WebDriver访问htaccess网站。

任何人都可以帮我在这方面呢?

在此先感谢,Sunil

Solutions Collecting From Web of "让Selenium通过.htaccesspopuplogin"

从seleniumium常见问题解答 (目前正在下载):

如何使用seleniumium登录到需要HTTP基本身份验证的站点(浏览器使模态对话框要求凭据)?

在URL中使用用户名和密码,如RFC 1738:测试类型中所述
打开http:// myusername:myuserpassword@myexample.com/blah/blah/blah

请注意,在Internet Explorer上这是行不通的,因为微软在IE中的URL中禁用了用户名/密码。 但是,您可以通过修改注册表来重新添加该功能,如链接的知识库文章中所述。 在HKEY_CURRENT_USER \ Software \ Microsoft \ Internet Explorer \ Main \ FeatureControl \ FEATURE_HTTP_USERNAME_PASSWORD_DISABLE中将“iexplore.exe”DWORD设置为0。

如果您不想自己修改注册表,则始终可以使用seleniumium Remote Control,它会自动为您设置0.9.2版本的注册表项。

WebDriver支持基本和摘要HTTP身份验证存在一个突出的问题。 如果您希望收到关于更改的通知,建议您通过http://code.google.com/p/selenium/issues/detail?id=34投票处理此问题

在WebDriver(或seleniumium)的所有浏览器都完全支持之前,备用选项是集成w /桌面GUI自动化工具,其中桌面GUI工具将自动执行HTTP认证部分。 你可能会找到一些这样的例子或文件下载,如果你谷歌的“seleniumium AutoIt”等东西上传。

对于跨平台的解决方案,用Sikuli或类似的东西替换AutoIt。

seleniumium常见问题的解决方案无效 – FireFox现在添加一个提示,以确认用户意味着验证哪一个没有seleniumium的任务。

“您将以用户名”myuser“登录到”my.domain.com“网站

最便宜的解决方案是使用selenium会话使用的浏览器配置文件手动输入一次凭据,并让浏览器保存它们。 (我在测试中做了这个)还添加了配置文件整数值network.http.phishy-userpass-length; 255

这个其他问题指出了我以编程的方式做到这一点,即使用seleniumium 2

我正在使用这个,它为我工作。

public void login(String username, String password){ WebDriver driver = getDriver(); String URL = "http://" + username + ":" + password + "@" + "link"; driver.get(URL); driver.manage().window().maximize(); }