Behold suite'ens almindelige driver, og registrer en ekstra Chrome-driver til proxy-ruten:

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ælg den omkring det arbejde, der har brug for ruten:

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

RSpec kan også vælge en registreret driver via drivermetadata; følg suite'ens eksisterende integration. Proxyindstillingen er et argument til oprettelse af browseren, så registrering af denne driver ændrer ikke en browser, der allerede kører under en anden driver. Skift af drivere overfører heller ikke den browsers cookies eller åbne forbindelser.

Eksemplet bruger en uautentificeret HTTP-proxy, med offentlige kandidater i HTTP-proxy-listen. En autentificeret proxy kræver en understøttet løsning til browserautentificering. Hvis testbrowseren skal nå en lokal applikation direkte, skal du angive den tilsigtede undtagelse i browserens understøttede omgåelseskonfiguration.

For en fjernbrowser skal du vurdere både proxyens og applikationens tilgængelighed fra den browsers maskine.

Relaterede artikler