2

我正在使用 Selenium 的 IE 驱动程序进行 Web 测试。启动 IE8 并关闭它后,该IEDriverServer.exe过程不会消失。如果我再次运行测试,则会创建一个新进程并一直挂起。我的测试代码或 Selenium 设置有什么问题?

using (var driver = new InternetExplorerDriver(
    new InternetExplorerOptions() { 
        IntroduceInstabilityByIgnoringProtectedModeSettings = true }))
{
    Assert.IsTrue(true);
    driver.Close();
}
4

2 回答 2

5

您正在运行哪个版本的 Selenium WebDriver .NET 绑定?.NET InternetExplorerDriver 类.Dispose()在 2.25 或更早版本中的方法的语义不等同于调用该.Quit()方法。这意味着要正确关闭 .NET 绑定 2.25 或更早版本中的 IEDriverServer.exe 进程,您必须显式调用该.Quit()方法。应该注意的是,对于尚未发布的 .NET 绑定的 2.26 版本,这已经改变,并且调用.Dispose()将等同于调用,无论是通过构造.Quit()显式调用还是隐式调用。using

于 2012-09-26T23:54:18.293 回答
1

简化: .Quit() --> 关闭驱动程序和浏览器 .Close() --> 关闭浏览器 .Dispose()-> 不知道

于 2014-03-06T17:48:43.740 回答