我遇到了连续运行多个自动化测试的问题。 当我单独运行测试时,所有工作都很好,但如果我同时运行多个测试,我会在第二次测试时遇到此错误(首先通过):
Result Message:
Test method IAM.DashboardTests.Tests.ChromeWizardTests.CheckAppsUsedByCoworkersChrome threw exception:
OpenQA.Selenium.WebDriverException: Unexpected error. System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it [::1]:59780
at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
--- End of inner exception stack trace ---
at System.Net.HttpWebRequest.GetRequestStream(TransportContext& context)
at System.Net.HttpWebRequest.GetRequestStream()
at OpenQA.Selenium.Remote.HttpCommandExecutor.Execute(Command commandToExecute)
at OpenQA.Selenium.Remote.DriverServiceCommandExecutor.Execute(Command commandToExecute)
at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
注意:测试正在我的机器上运行,我不使用任何远程机器。
所有测试都放在一个类中,它包含带有运行驱动程序和浏览器的TestInitialize(MSTest注释):
private void ChooseBrowser(String browser)
{
if (driver == null)
{
if ("firefox".Equals(browser))
{
driver = new FirefoxDriver();
}
driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(30));
和浏览器停止的TestCleanup:
public void Stop()
{
driver.Quit();
driver = null;
}
顺便说一句,浏览器在第二次测试中打开并进入登录页面,但在发生错误之后。我的意思是物理浏览器存在,但测试可以与他互动。 在Windows8上的Chrome和Firefox中重现。
请给我一些建议,我不能单独解决这个问题。