【发布时间】:2017-11-15 17:19:06
【问题描述】:
所以我已经设置了一个自动化框架,并且对于我想要运行的每个测试,我都创建了自己的单元测试。在我们的冒烟测试期间,我们运行了几个我按顺序构建的单元测试。因此,我认为创建有序测试是个好主意。当单独运行每个测试时,它们工作得很好。但是,一旦我开始运行有序测试,列表中的第一个测试就会运行,但随后出现此错误:
OpenQA.Selenium.WebDriverException:意外错误。 System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: 由于目标机器主动拒绝,无法建立连接
我发现这个问题是由于 ChromeDriver 在第一次测试结束时关闭而引起的。但是,即使我告诉它不要关闭驱动程序,它似乎也关闭了它。如果我告诉每个单元测试的 [SetUp] 创建一个新驱动程序,它似乎也不起作用。
我现在已经设置了这样的代码:
public static IWebDriver getWebDriver()
{
IWebDriver newDriver = new ChromeDriver(@"..\..\..\packages\Selenium.Chrome.WebDriver.2.33\driver");
return newDriver;
}
public static IWebDriver webDriver;
然后从单元测试中我设置 webDriver = getWebDriver() 这应该会导致它创建一个新的。我也尝试在单个单元测试中创建多个 [TestMethod],但它最终仍然给我同样的错误。我真的不知道我现在应该做什么,而且我还很新,没有同行指导我工作。任何方向将不胜感激!
【问题讨论】:
标签: c# visual-studio unit-testing selenium testing