درایور معمول مجموعه را نگه دارید و یک درایور دوم Chrome برای مسیر پروکسی ثبت کنید:

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

آن را پیرامون کاری که به این مسیر نیاز دارد انتخاب کنید:

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

RSpec همچنین می‌تواند یک درایور ثبت‌شده را از طریق فراداده‌های درایور انتخاب کند؛ از یکپارچگی موجود مجموعه پیروی کنید. تنظیم پروکسی یک آرگومان ساخت مرورگر است، بنابراین ثبت این درایور مرورگری را که از پیش زیر درایور دیگری در حال اجراست تغییر نمی‌دهد. جابه‌جایی درایورها نیز کوکی‌ها یا اتصال‌های باز آن مرورگر را منتقل نمی‌کند.

مثال از یک پروکسی HTTP بدون احراز هویت استفاده می‌کند و نامزدهای عمومی در فهرست پروکسی HTTP موجود است. پروکسی با احراز هویت به سازوکار پشتیبانی‌شده احراز هویت مرورگر نیاز دارد. اگر مرورگر تست باید مستقیماً به یک برنامه محلی برسد، استثنای موردنظر را در پیکربندی عبور پشتیبانی‌شده مرورگر تنظیم کنید.

برای مرورگر راه‌دور، دسترسی‌پذیری پروکسی و برنامه را از دستگاه همان مرورگر ارزیابی کنید.

مقالات مرتبط