Chrome驱动程序-即使没有选项,60秒后仍会超时



我有一个运行很长时间的自动化任务。有时,网页完全加载需要一分钟以上的时间,所以我尝试用两种不同的方式设置默认超时。两者都不起作用,我仍然会在60秒错误后获得默认超时。

public IWebDriver driver;
public DataAuditsUtility()
{
driver = new ChromeDriver();
driver.Manage().Timeouts().PageLoad = TimeSpan.FromSeconds(180);
}

我也试过这样。。。

public IWebDriver driver;
public ChromeOptions options;
public DataAuditsUtility()
{
options = new ChromeOptions();
options.AddArgument("--no-sandbox");
driver = new ChromeDriver(options);
}

据我所见,这两种方法都应该有效。。我开始认为这可能是我如何实例化chrome驱动程序的问题。我所做的是,我有一个类DataAuditsUtility,它有自己的WebDriver实例,我实例化它并在构造函数中设置它。这个类有一组在页面上执行操作的方法。

在测试类中,我实例化这个类,并只调用它的方法。自动化运行得很好,但唯一的问题是我不知道如何增加URL超时。有什么想法可以解释为什么上述方法不起作用?谢谢

在这个解决方案中也没有任何价值,因为我在任何地方都没有配置文件。实际上,除了这个测试类之外,我们在解决方案中没有使用selenium,所以我想在这里包含所有配置,而不是在其他地方包含配置文件。

报告了一个问题,Web驱动程序超时时间最长为60秒。

这里有一句话:

每个驱动程序类都有一个构造函数重载,允许您设置每个命令的超时。以下是FirefoxDriver的示例将命令超时设置为5分钟:

IWebDriver driver=new FirefoxDriver(new FirefoxBinary((,null,TimeSpan.FromMinutes(5((;

您可以为InternetExplorerDriver找到类似的构造函数重载,ChromeDriver和RemoteWebDriver。

使用这些构造函数时,WebDriverWait似乎是被覆盖。

IWebDriver driver=new FirefoxDriver(new FirefoxBinary((,null,TimeSpan.FromHours(2((;

WebDriverWait wait=新的WebDriverWai(驱动程序,TimeSpan.FromMinutes(2((。。。

这导致它等待了2个小时而不是两分钟。

因此,您似乎可以在实例化时设置一个值。

相关内容

  • 没有找到相关文章

最新更新