如何在硒 C# 中超时时自动退出浏览器

本文关键字:退出 浏览器 超时 中超 | 更新日期: 2023-09-27 18:35:48

我希望浏览器在超时时自动退出浏览器。

我正在调试它,在我的脑海中显示正确。但是何时运行该应用程序,我不知道它在 waiting_timeout 秒后不会退出浏览器。

我的代码是这样的:

int waiting_timeout = 60;
_tmExcute = DateTime.Now;
// Do any thing
if ((DateTime.Now - _tmExcute).TotalSeconds > waiting_timeout)
{
    ExitALL();      // exit browser.
}

如何在硒 C# 中超时时自动退出浏览器

使用 driver.quit(),这将退出驱动程序并关闭每个关联的窗口。

if ((DateTime.Now - _tmExcute).TotalSeconds > waiting_timeout)
{
    driver.quit();
}

如果您只打开了一个窗口driver.close()也可以工作。

超时时,Selenium通常会引发异常。所以你的表情((DateTime.Now - _tmExcute).TotalSeconds > waiting_timeout)永远不会false.您应该改用try ... catch

尽管如果您使用测试框架,最好将 WebDriver 关闭放在您的[TestCleanup][TearDown]中。然后,您不必一次又一次地显式处理异常。