បញ្ជូនពាក្យបញ្ជា RemoteWebDriver របស់ Java តាមប្រូកស៊ី
កំណត់ ClientConfig លើកម្មវិធីប្រតិបត្តិពាក្យបញ្ជា នៅពេលកម្មវិធី Java ត្រូវទៅដល់សេវា WebDriver ពីចម្ងាយតាម forward proxy។
Java runner → configured proxy → WebDriver service
remote browser → its own route → website
សម្រាប់ផ្លូវទីមួយ កំណត់កម្មវិធីប្រតិបត្តិពាក្យបញ្ជា Java៖
import java.net.InetSocketAddress;
import java.net.Proxy;
import java.net.URI;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.remote.HttpCommandExecutor;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.openqa.selenium.remote.http.ClientConfig;
var proxy = new Proxy(Proxy.Type.HTTP,
new InetSocketAddress("proxy.example", 8080));
var config = ClientConfig.defaultConfig()
.baseUri(URI.create("https://grid.example/"))
.proxy(proxy);
var executor = new HttpCommandExecutor(config);
var driver = new RemoteWebDriver(executor, new ChromeOptions());
ប្រើចំណុច Grid ពិតប្រាកដ រួមទាំងផ្លូវដែលបានដាក់ពង្រាយ។ រក្សាជម្រើស Chrome ដែលចាំបាច់ ហើយបញ្ចប់សម័យដោយ driver.quit()។
នេះជា java.net.Proxy សម្រាប់ការតភ្ជាប់ HTTP របស់កម្មវិធី Java។ ផ្ទុយទៅវិញ capability org.openqa.selenium.Proxy របស់ Selenium គ្រប់គ្រង ចរាចរណ៍ទំព័ររបស់កម្មវិធីរុករក; ប្រើវាបន្ថែមតែនៅពេលផ្លូវទីពីរត្រូវការប្រូកស៊ី។
ការបរាជ័យបង្កើតសម័យ ឬផ្ញើពាក្យបញ្ជាជាបញ្ហានៃផ្លូវទីមួយ។ ការរុករកបន្ទាប់អាចបរាជ័យលើផ្លូវទីពីរ។ ការផ្ទៀងផ្ទាត់អត្តសញ្ញាណជាមួយអន្តរការីរបស់កម្មវិធី Java ត្រូវការវិធីដែល HTTP transport នោះគាំទ្រ; callback ផ្ទៀងផ្ទាត់អត្តសញ្ញាណរបស់កម្មវិធីរុករកមិនកំណត់វាទេ។