0

当使用 Capybara、Selenium、Firefox (windows) 进行午餐测试时,我正在使用这种类型的代码

  Capybara.reset_sessions!
  Capybara.register_driver :selenium do |app|
  profile = Selenium::WebDriver::Firefox::Profile.new

  profile["network.proxy.type"] = 1 # manual proxy config
                                    #profile["network.proxy.http"] = "209.188.18.130"
  profile["network.proxy.ssl"]  = "**********"
  profile["network.proxy.ssl_port"]             =   ****

  Capybara::Selenium::Driver.new(app, :profile => profile)
  end

但在我看来,即使进行配置,浏览器也不安全。例如,在真正的浏览器中使用相同的代理而不是在测试环境中,我在注册新站点时没有问题。但是,当我使用 Selenium Firefox Capybara 进行测试时,即使我更改了许多代理 - 该网站也能看穿它。

问题是:是否有可能配置 Selenium Firefox Capybara 使其作为真正的浏览器受到保护?

提前致谢!

4

1 回答 1

0

是的。最好的方法是手动配置浏览器并读取其 prefs.js 文件以查看实际配置是什么,然后将该信息放入您的配置文件中并进入构造函数。这是我设置的:

   profile["network.proxy.no_proxies_on"] = NO_PROXY_SETTING
   profile["network.proxy.backup.ftp"] = ""
   profile["network.proxy.backup.ftp_port"] = 0 
   profile["network.proxy.backup.socks"] = ""
   profile["network.proxy.backup.socks_port"] = 0 
   profile["network.proxy.backup.ssl"] = ""
   profile["network.proxy.backup.ssl_port"] = 0 
   profile["network.proxy.ftp_port"] = PROXY_PORT
   profile["network.proxy.ftp"] = PROXY_HOST
   profile["network.proxy.http_port"] = PROXY_PORT
   profile["network.proxy.http"] = PROXY_HOST
   profile["network.proxy.share_proxy_settings"] = true
   profile["network.proxy.socks_port"] = PROXY_PORT
   profile["network.proxy.socks"] = PROXY_HOST
   profile["network.proxy.ssl_port"] = PROXY_PORT
   profile["network.proxy.ssl"] = PROXY_HOST
   profile["network.proxy.type"] = 1 # manual proxy config
于 2014-02-20T20:34:32.620 回答