Alegerea unui browser cu proxy pentru un singur test Capybara
Înregistrați un driver Selenium cu nume, apoi folosiți-l pentru testele care au nevoie de altă rută fără a modifica opțiunile de pornire ale unui browser existent.
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
)
endSelectați-l în jurul lucrării care are nevoie de rută:
Capybara.using_driver(:chrome_via_proxy) do
visit 'https://www.example.com/'
endRSpec 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.