2016-07-29 115 views
2

因此,我將NUnit Seleniumt測試放到了我們團隊的tfs上。我已經配置它們來構建並運行Visual Studio測試。我已將VsoAgent配置爲交互式。我的測試開始運行,但打開Chrome瀏覽器後我看到一個傳達的Chrome擴展的自動化已經停止工作,我得到一個錯誤:將硒測試與tfs集成

OpenQA.Selenium.WebDriverException : The HTTP request to the remote WebDriver server for URL http://localhost:54836/session timed out after 60 seconds. 
----> System.Net.WebException : The operation has timed out 
TearDown : System.NullReferenceException : Object reference not set to an instance of an object. 
Stack Trace: 
at OpenQA.Selenium.Remote.HttpCommandExecutor.CreateResponse(WebRequest request) 
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) 
at OpenQA.Selenium.Remote.RemoteWebDriver.StartSession(ICapabilities desiredCapabilities) 
at OpenQA.Selenium.Remote.RemoteWebDriver..ctor(ICommandExecutor commandExecutor, ICapabilities desiredCapabilities) 
at OpenQA.Selenium.Chrome.ChromeDriver..ctor(ChromeOptions options) 
at SeleniumBase.Selenium_base.setUp(Browsers browser, String URL, Int32 waitMillis) in C:\TFS\agent3\_work\1\s\PentaJPKSelenium\Selenium_base.cs:line 38 
at PentaJPKBase.PentaJPK_base.SetupTest() in C:\TFS\agent3\_work\1\s\PentaJPKSelenium\PentaJPKSelenium_base.cs:line 17 
--WebException 
at System.Net.HttpWebRequest.GetResponse() 
at OpenQA.Selenium.Remote.HttpCommandExecutor.CreateResponse(WebRequest request) 
--TearDown 
at PentaJPKBase.PentaJPK_base.TeardownTest() in C:\TFS\agent3\_work\1\s\PentaJPKSelenium\PentaJPKSelenium_base.cs:line 54Error: Exception NUnit.Core.UnsupportedFrameworkException, Exception thrown executing tests in C:\TFS\agent3\_work\1\s\PentaJPKSelenium\bin\Debug\PentaJPKSelenium.dll 

當我在本地運行它們,而不是通過經紀人,一切都正常工作。 有誰知道如何解決這個問題?

回答

1

我已經找到了soulution的尋找它小時後看看。我希望ChromeDriver能夠使用最新版Chrome上的最新版本。神奇的線,使得它的工作是:

ChromeOptions options = new ChromeOptions(); 
options.AddArguments("no-sandbox"); <-------------------------- 
driver = new ChromeDriver(options); 

這條線從試圖打開Chrome瀏覽器以用戶SYSTEM,他不能使用VSO劑處理停止ChromeDriver。

+0

偉大的發現,作品一種享受。 – dove

+0

我建議你也接受這個答案,因爲它完全符合你的要求,而且我完全相同 – dove