C#Selenium多窗口
我尝试用selenium制作一个脚本,它可以打开IE的多个窗口/选项卡。 现在,这将是很容易的,除了事实,我不知道有多少标签将被打开 这就是我现在拥有的:C#Selenium多窗口,c#,winforms,selenium,C#,Winforms,Selenium,我尝试用selenium制作一个脚本,它可以打开IE的多个窗口/选项卡。 现在,这将是很容易的,除了事实,我不知道有多少标签将被打开 这就是我现在拥有的: private void按钮1\u单击(对象发送者,事件参数e) { ilosc=转换为32(numericUpDown1.Value); Join(); } 私有void Join() { 对于(int i=0;i>=ilosc;i++) { IWebDriver=newInternetExplorerDriver(); driver.Na
private void按钮1\u单击(对象发送者,事件参数e)
{
ilosc=转换为32(numericUpDown1.Value);
Join();
}
私有void Join()
{
对于(int i=0;i>=ilosc;i++)
{
IWebDriver=newInternetExplorerDriver();
driver.Navigate().gotour(@)https://google.com");
}
}
我在这里看到了一些问题,比如IWebDriver
的变量名。
我也更喜欢多线程,因为它不会以这种方式滞后于表单。
如何使用此方法打开多个窗口/选项卡?多亏了pcalkins,我找到了一种方法! 我创建了一个新线程,并在调用Join()void时启动它。这是我的最终代码:
private void按钮1\u单击(对象发送者,事件参数e)
{
ilosc=转换为32(numericUpDown1.Value);
Join();
}
无效子项()
{
IWebDriver=newInternetExplorerDriver();
driver.Navigate().gotour(@)https://google.com");
}
私有void Join()
{
对于(int i=1;i)您应该澄清是否需要在此处执行多线程操作。我更希望它是一个多线程程序。您需要的是每个浏览器的每个驱动程序一个线程。(也可以从一个浏览器中打开窗口/选项卡,但这些窗口/选项卡将位于同一线程中。)只是一个简单的建议…与其在类中使用ilosc
“全局”,不如将其作为按钮1\u Click()
的参数传递给Join()
。