2013-04-23 20 views
0

測試代理在吃午飯,我使用這種類型的代碼與水豚,硒,火狐(窗口)測試有什麼不對的硒,同時與水豚

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,以便它應該被保護爲真正的瀏覽器?

在此先感謝!

回答

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