Choisir un navigateur proxy pour un seul test Capybara
Enregistrez un pilote Selenium nommé, puis utilisez-le pour les tests qui ont besoin d'un autre itinéraire sans modifier les options de démarrage d'un navigateur existant.
Conservez le pilote habituel de la suite et enregistrez un second pilote Chrome pour l'itinéraire via le 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
)
endSélectionnez-le autour du travail qui a besoin de cet itinéraire :
Capybara.using_driver(:chrome_via_proxy) do
visit 'https://www.example.com/'
endRSpec peut aussi sélectionner un pilote enregistré via les métadonnées du pilote ; suivez l'intégration existante de la suite. Le réglage du proxy est un argument de création du navigateur, donc enregistrer ce pilote ne modifie pas un navigateur déjà lancé sous un autre pilote. Changer de pilote ne transfère pas non plus les cookies ni les connexions ouvertes de ce navigateur.
L'exemple utilise un proxy HTTP non authentifié, avec des candidats publics dans la liste de proxys HTTP. Un proxy authentifié nécessite un dispositif d'authentification du navigateur pris en charge. Si le navigateur de test doit joindre directement une application locale, définissez l'exception voulue dans la configuration de contournement prise en charge du navigateur.
Pour un navigateur distant, évaluez l'accessibilité du proxy et de l'application depuis la machine de ce navigateur.