我正在尝试对多个网站使用相同的 webdriver 实例。每个网站都被一个 WinForm 按钮调用。这样做的目的是让应用程序运行得更快。
编码
public partial class Form5 : Form
{
public IWebDriver driverON;
public Form5()
{
InitializeComponent();
var service = ChromeDriverService.CreateDefaultService("C:\App\ChromeDriver");
var options = new ChromeOptions();
options.BinaryLocation = "C:\App\GoogleChromePortable\App\Chrome-bin\chrome.exe";
IWebDriver driverON = new ChromeDriver(service, options);
}
public void Repartizare()
{
IJavaScriptExecutor js = (IJavaScriptExecutor)driverON;
driverON.Navigate().GoToUrl("http://ipadress/abc/");
js.ExecuteScript("document.getElementsByName('day')[0].value = ''");
js.ExecuteScript("document.getElementsByName('month')[0].value = ''");
js.ExecuteScript("document.getElementsByName('year')[0].value = ''");
js.ExecuteScript("document.getElementsByName('btnPrint')[0].click()");
}
public void Registry()
{
IJavaScriptExecutor js = (IJavaScriptExecutor)driverON;
driverON.Navigate().GoToUrl("http://ipadress/def/");
js.ExecuteScript("document.getElementsByName('type')[0].value = 'object'");
js.ExecuteScript("document.getElementsByName('btnPrint')[0].click()");
}
private void Button1_Click(object sender, EventArgs e)
{
Repartizare();
}
private void Button2_Click(object sender, EventArgs e)
{
Registry();
}
}
driverOn在Repartizareor函数中第一次出现时,Registry我收到此错误:“对象引用未设置为对象的实例。”
我必须让 driverONForm5()进入这些功能。我错过了什么?我在互联网上找到了一些教程,但它们主要讨论的是 Java 语言中的多个类假设,我不知道如何根据我的用法调整它们。谢谢你。