Behåll svitens vanliga drivrutin och registrera en andra Chrome-drivrutin för proxyvägen:

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

Välj den runt arbetet som behöver vägen:

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

RSpec kan också välja en registrerad drivrutin via drivrutinsmetadata; följ svitens befintliga integration. Proxyinställningen är ett argument när webbläsaren skapas, så registreringen av den här drivrutinen ändrar inte en webbläsare som redan körs under en annan drivrutin. Att byta drivrutin överför inte heller webbläsarens cookies eller öppna anslutningar.

Exemplet använder en oautentiserad HTTP-proxy, med offentliga kandidater i HTTP-proxylistan. En autentiserad proxy kräver en ordning för webbläsarautentisering som stöds. Om testwebbläsaren måste nå ett lokalt program direkt ställer du in det avsedda undantaget i webbläsarens bypass-konfiguration som stöds.

För en fjärrwebbläsare bedömer du både proxyns och programmets nåbarhet från den webbläsarens maskin.

Relaterade artiklar