使用编码UI定位浏览器进行跨浏览器测试

时间:2016-02-17 20:18:54

标签: selenium selenium-webdriver cross-browser coded-ui-tests

我目前正在使用Coded UI在IE上进行测试,并且正在使用Selenium跨浏览器组件将此测试扩展到Chrome。

在最近更新来自selenium的dot net绑定之前,这些行工作正常

BrowserWindow.CurrentBrowser = "chrome";
CurrentBrowser = BrowserWindow.Launch(onDemandURL);

现在我收到以下错误,指出windowHandle上的空值

    at Microsoft.VisualStudio.TestTools.UITesting.UITestControl..ctor(IntPtr windowHandle)
   at Microsoft.VisualStudio.TestTools.UITesting.UITestControl.FromWindowHandle(IntPtr windowHandle)
   at Microsoft.VisualStudio.TestTools.UITesting.UITestControlFactory.FromWindowHandle(IntPtr windowHandle)
   at Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowser.CrossBrowserService.InitializeTopLevelWindow()
   at Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowser.CrossBrowserService.InitializeCrossBrowserService(String[] args)
   at Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowser.CrossBrowserService..ctor(String[] args)
   at Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowser.BrowserServices.ChromeBrowserService..ctor(String[] args)
   at Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowser.CrossBrowserService.<.cctor>b__0(String[] args)
   at Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowser.CrossBrowserService.Launch(Uri uri)
   at Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowser.CrossBrowserFactory.Launch(Uri uri)
   at Microsoft.VisualStudio.TestTools.UITesting.BrowserWindow.LaunchPrivate(Uri uri)
   at Microsoft.VisualStudio.TestTools.UITesting.BrowserWindow.<>c__DisplayClass15.<Launch>b__14()
   at Microsoft.VisualStudio.TestTools.UITesting.CodedUITestMethodInvoker.InvokeMethod[T](Func`1 function, UITestControl control, Boolean firePlaybackErrorEvent, Boolean logAsAction)
   at Microsoft.VisualStudio.TestTools.UITesting.BrowserWindow.Launch(Uri uri)

InitializeTopLevelWindow()的CrossBrowserService调用中似乎存在问题。我不确定这是否是跨浏览器服务器中的错误或来自哪里。话虽这么说 - 有没有其他方法可以启动Chrome浏览器,并像上面那样将其分配给CurrentBrowser,其中CurrentBrowser的类型为BrowserWindow。或者我在上面两行中做错了什么?

0 个答案:

没有答案