Păstrați driverul obișnuit al suitei și înregistrați un al doilea driver Chrome pentru ruta prin proxy:

Capybara.register_driver :chrome_via_proxy do |app|
  options = Selenium::WebDriver::Chrome::Options.new
  options.add_argument('--proxy-server=http://proxy.example:8080')
  Capybara::Selenium::Driver.new(
    app, browser: :chrome, options: options
  )
end

Selectați-l în jurul lucrării care are nevoie de rută:

Capybara.using_driver(:chrome_via_proxy) do
  visit 'https://www.example.com/'
end

RSpec poate selecta și un driver înregistrat prin metadatele driverului; urmați integrarea existentă a suitei. Setarea de proxy este un argument de creare a browserului, deci înregistrarea acestui driver nu modifică un browser care rulează deja sub alt driver. Schimbarea driverelor nu transferă nici cookie-urile sau conexiunile deschise ale acelui browser.

Exemplul folosește un proxy HTTP fără autentificare, cu candidați publici disponibili în lista de proxy HTTP. Un proxy cu autentificare necesită o soluție acceptată de autentificare în browser. Dacă browserul de test trebuie să ajungă direct la o aplicație locală, setați excepția dorită în configurația de ocolire acceptată a browserului.

Pentru un browser la distanță, evaluați accesibilitatea atât a proxy-ului, cât și a aplicației de pe mașina acelui browser.

Articole similare