Используя MSTest, я вызывал driver.Quit () в TestCleanup, но в конце теста я продолжаю загружать окна Firefox, открытые в конце тестов.
Я обнаружил, что NoSuchElementException, по-видимому, не позволяет драйверу успешно вызвать quit, поэтому завернул TestCleanup с помощью try / finally:
[TestCleanup]
public void TestCleanUp()
{
try
{
driver.FindElement(By.Id("ctl00_btnClearSession")).Click();
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
wait.Until((d) => { return d.FindElement(By.Id("ctl00_btnClearSession")).Displayed; });
}
finally {
driver.Quit();
}
}
Это сработало с проблемой, с которой я продолжал сталкиваться, но, возможно, мне придется обернуть все мои TestMethods с помощью try / finally. Это далеко от идеала, но я больше не вижу открытых окон, когда я делаю это.