Ruby watirwebdriver&;代理凭据
我试图在公司环境中使用watir webdriver/ruby,但遇到了需要输入代理凭据才能访问测试系统的问题 我读过其他论坛的各种片段,包括Alister Scott关于设置一般代理并将其保存到配置文件的有用提示。然而,这仍然不能让我克服输入代理凭据的实际需要 我能想到的两个大头钉包括 选项1:以与代理本身相同的方式保存凭据。例如Ruby watirwebdriver&;代理凭据,ruby,proxy,watir,Ruby,Proxy,Watir,我试图在公司环境中使用watir webdriver/ruby,但遇到了需要输入代理凭据才能访问测试系统的问题 我读过其他论坛的各种片段,包括Alister Scott关于设置一般代理并将其保存到配置文件的有用提示。然而,这仍然不能让我克服输入代理凭据的实际需要 我能想到的两个大头钉包括 选项1:以与代理本身相同的方式保存凭据。例如 profile = Selenium::WebDriver::Firefox::Profile.new profile.proxy = Selenium::WebD
profile = Selenium::WebDriver::Firefox::Profile.new
profile.proxy = Selenium::WebDriver::Proxy.new :http => 'myproxy.com:8080', :ssl => 'myproxy.com:8080'
# COMMAND FOR PROXY CREDENTIALS?
b = Watir::Browser.new :firefox, :profile => profile
选项2:使用我的默认配置文件,该配置文件保存了代理凭据,但仍需要一些webdriver代码来单击“确定”按钮(之后可能还会使用“我了解风险”对话框等进行更多操作)
作为一个新手,我还不能发布图片,但对话文本显示
代理[BLAH]正在请求用户名和密码。网站上说[废话]
用户名:
密码:
[确定][取消]
欢迎提出任何建议
更新
我成功地使用了默认配置文件并调整了一个名为“signon.autologin.proxy”的firefox设置,将其设置为true(在浏览器中点击about:config,在“prox”上过滤,它应该显示在底部)
尽管如此,还是希望使用基于watir webdriver的解决方案;-) 如果您需要一个特定的代理服务器用于测试中的系统,另一个用于一般用途,我建议您考虑使用PAC文件 示例脚本:
function FindProxyForURL(url, host)
{
if (shExpMatch(url, "http://principia.mo.techpaths.com*")) {
return "DIRECT";
}
if (isInNet(myIpAddress(), "192.168.1.0", "255.255.255.0"))
return "PROXY 192.168.1.1:8080";
else
return "DIRECT";
}
希望这能有所帮助。你说的“设法让某些东西发挥作用”是什么意思?它解决了你的问题吗?谢谢Dave。我通过调整firefox配置文件,使用密码管理器保留凭据,然后更改浏览器中的signon.autologin.proxy设置,暂时实现了这一点。不过,您的解决方案看起来更优雅一些——我将进行更多的阅读和实验。再次感谢!
function FindProxyForURL(url, host)
{
if (shExpMatch(url, "http://principia.mo.techpaths.com*")) {
return "DIRECT";
}
if (isInNet(myIpAddress(), "192.168.1.0", "255.255.255.0"))
return "PROXY 192.168.1.1:8080";
else
return "DIRECT";
}