C# RemoteWebDriver يملك وكيلاً لأوامره
اضبط System.Net.WebProxy على HttpCommandExecutor قبل إنشاء جلسة Selenium البعيدة.
عندما تحتاج عملية اختبار C# إلى وكيل أمامي للوصول إلى خدمة Selenium بعيدة، اربط System.Net.WebProxy بمنفّذ أوامر HTTP الخاص بها:
using System;
using System.Net;
using OpenQA.Selenium.Remote;
var commandProxy = new WebProxy("http://proxy.example:8080")
{
Credentials = proxyCredentials
};
var executor = new HttpCommandExecutor(
remoteWebDriverUri, TimeSpan.FromSeconds(60))
{
Proxy = commandProxy
};
using var driver = new RemoteWebDriver(
executor, browserOptions.ToCapabilities());
proxyCredentials هو حساب الوكيل المقصود، وremoteWebDriverUri هو عنوان URI المضبوط للخدمة البعيدة، ويحتوي browserOptions على إمكانات المتصفح والمزوّد الحالية. احذف Credentials عندما لا يتطلب الوسيط مصادقة. في هذه الحالة، توفّر قائمة وكلاء HTTP مرشحين إذا كانت خدمة WebDriver البعيدة عامة وكان الوصول عبر وكلاء عامين مسموحاً.
اضبط خاصية المنفّذ قبل إنشاء RemoteWebDriver. فبدء تشغيل المشغّل يطلق تبادل الجلسة البعيدة؛ وينشئ المنفّذ عميل HTTP الأساسي عنده الحاجة إليه أول مرة. وتغيير الخاصية لاحقاً ليس طريقة موثوقة لاستبدال المعالج الذي يستخدمه ذلك العميل بالفعل.
ينقل هذا المسار أوامر WebDriver من المشغّل إلى الخدمة البعيدة. أما حركة مرور المتصفح إلى المواقع فاتصال منفصل. وإذا احتاجت هي أيضاً إلى وكيل، فاضبط ذلك عبر إمكانات المتصفح باستخدام نقطة نهاية يمكن الوصول إليها من آلة المتصفح.
تصادق بيانات اعتماد الوكيل مع الوسيط. أما بيانات اعتماد الخدمة البعيدة فتبقى ضمن إعدادات تسجيل الدخول أو الإمكانات التي يدعمها المزوّد.