我尝试BrowserWindow.CurrentBrowser = "firefox";
从 MSBuild 执行编码的 UI 测试 (),但“firefox”从未启动,并且构建失败显示下一个错误:
Test method SolutionX.UITests.NewTestUIX.NewtTestMethod threw exception:
System.NullReferenceException: Object reference not set to an instance of an object.
错误详情:
Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowserProxy.ProxyFirefoxDriver.<>c__DisplayClass54.<.ctor>b__52()
Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowserProxy.FuncInvoker.InvokeMethod[T](Func`1 function)
Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowserProxy.ProxyFirefoxDriver..ctor(ProxyFirefoxProfile profile)
Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowser.BrowserServices.FirefoxBrowserService.InitializeWebDriver(String[] args)
Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowser.CrossBrowserService.<.cctor>b__1(String[] args)
Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowser.CrossBrowserService.Launch(Uri uri)
Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowser.CrossBrowserFactory.Launch(Uri uri)
Microsoft.VisualStudio.TestTools.UITesting.BrowserWindow.LaunchPrivate(Uri uri)
Microsoft.VisualStudio.TestTools.UITesting.BrowserWindow.<>c__DisplayClass3d.<Launch>b__3c()
Microsoft.VisualStudio.TestTools.UITesting.CodedUITestMethodInvoker.InvokeMethod[T](Func`1 function, UITestControl control, Boolean firePlaybackErrorEvent, Boolean logAsAction)
Microsoft.VisualStudio.TestTools.UITesting.BrowserWindow.Launch(Uri uri)
SolutionX.UITests.UIMap.StartApp() in c:\SolutionX\Builds\Agent1\SolutionX\IntegrationSolutionX\Sources\SolutionX.UITests\UIMap.Designer.cs: line 1334
SolutionX.UITests.NewTestUIX.NewtTestMethod() in c:\SolutionX\Builds\Agent1\SolutionX\IntegrationSolutionX\Sources\SolutionX.UITests\NewTestUIX.cs: line 33
但后来我尝试使用“chrome”,它工作正常,错误只出现在“firefox”中。
在我的本地机器中使用“firefox”进行的编码 UI 测试工作正常,但来自 MSBuild 的测试不起作用。
我有一个带有 SPA 的测试场景(来自 John Papa 的 Hottowel)和下一个版本:
I use Breeze 1.4.5, Durandal 2.0.1, Knockout 3.0.0, Bootstrap 3.0, jquery 2.0.3
我有下一个版本:
Firefox 25
Google Chrome 29.0.1547.76 m
chromedriver_win32_2.3
selenium-dotnet-strongnamed-2.35.0
VS2013
Machine of build: Windows Server 2012