C# စမ်းသပ်မှု လုပ်ငန်းစဉ်သည် အဝေးရောက် Selenium ဝန်ဆောင်မှုသို့ ရောက်ရန် forward proxy လိုအပ်သောအခါ ၎င်း၏ HTTP command executor တွင် System.Net.WebProxy ကို တွဲချိတ်ပါ။

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 သည် ရည်ရွယ်ထားသော proxy အကောင့်ဖြစ်ပြီး remoteWebDriverUri သည် ပြင်ဆင်ထားသော အဝေးရောက် ဝန်ဆောင်မှု URI ဖြစ်ကာ browserOptions တွင် ရှိပြီးသား browser နှင့် provider စွမ်းရည်များ ပါဝင်သည်။ ကြားခံသမားက အထောက်အထား မလိုအပ်ပါက Credentials ကို ချန်လှပ်ပါ။ ထိုအခြေအနေတွင် အဝေးရောက် WebDriver ဝန်ဆောင်မှုသည် အများသုံးဖြစ်ပြီး အများသုံး proxy မှတစ်ဆင့် ဝင်ရောက်ခွင့်ပြုထားပါက HTTP proxy စာရင်း သည် ကိုယ်စားလှယ်လောင်းများကို ပေးသည်။

RemoteWebDriver မတည်ဆောက်မီ executor ၏ property ကို သတ်မှတ်ပါ။ driver ဖန်တီးခြင်းသည် အဝေးရောက် session ဖလှယ်မှုကို စတင်သည်။ executor သည် ပထမဆုံး လိုအပ်သောအခါ ၎င်း၏ အခြေခံ HTTP client ကို ဖန်တီးသည်။ နောက်ပိုင်း property ပြောင်းလဲခြင်းသည် ထို client အသုံးပြုနေပြီးသား handler ကို အစားထိုးရန် ယုံကြည်စိတ်ချရသော နည်းလမ်း မဟုတ်ပါ။

ဤလမ်းကြောင်းသည် WebDriver command များကို runner မှ အဝေးရောက် ဝန်ဆောင်မှုသို့ သယ်ဆောင်သည်။ browser ၏ ကိုယ်ပိုင် ဝဘ်ဆိုက် traffic သည် သီးခြား ချိတ်ဆက်မှု ဖြစ်သည်။ ၎င်းလည်း proxy လိုအပ်ပါက browser စက်မှ ရောက်ရှိနိုင်သော endpoint ကို အသုံးပြု၍ browser စွမ်းရည်များမှတစ်ဆင့် ပြင်ဆင်ပါ။

proxy အထောက်အထားများသည် ကြားခံသမားထံ အထောက်အထား ပြပြီး အတည်ပြုသည်။ အဝေးရောက် ဝန်ဆောင်မှု၏ အထောက်အထားများသည် provider ပံ့ပိုးသော login သို့မဟုတ် စွမ်းရည် ပြင်ဆင်မှုတွင် ရှိနေဆဲ ဖြစ်သည်။

ဆက်စပ်ဆောင်းပါးများ