visual-studio-2017 - 为什么 VS2017 CodedUI 测试刚刚停止工作
问题描述
我有一个编码的 UI 测试,它在调试模式下本地运行良好,并且随机停止。它仍然适用于其他开发电脑,但不再适用于我的电脑。
我似乎没有收到任何 Windows 更新或 VS 更新从它工作和没有。它现在正在做的是单击不正确的菜单项,或者即使它存在也找不到要单击的按钮。映射是正确的,并且可以在其他机器上工作,并且它不是时间问题,因为有效等待已经到位,正如我所说,它在其他机器上工作正常。
Visual Studio Version 15.8.6 Enterprise 2017
Internet Explorer 11.0.90
不起作用的输出异常似乎表明缩放异常,但测试不应该尝试缩放
IEDOM:ZoomPercentage:尝试缩放时出现异常
工作时的调试输出如下
672948150154,QTAgent32_40.exe,播放 - {9} [SUCCESS] MouseButtonClick - “[Web]ControlType='Button' && TagName='INPUT' && Id='ctl00_ContentPlaceHolder1_btnNext' && Name='ctl00$ContentPlaceHolder1$btnNext' && FilterCondition( DisplayText='Next', Type='submit', Title='', Class='btn btn-success mr-5 mb-5 btn-xs mr-5', ControlDefinition='name="ctl00$ContentPlaceHolder1$btnNext" ', TagInstance='8')" 线程 0x1ce4 以代码 0 (0x0) 退出。E, 2964, 13, 2018/10/11, 08:48:37.846, 673049974977, QTAgent32_40.exe,异常:System.Runtime.InteropServices.COMException 消息:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。堆栈跟踪:在可访问性。
E, 2964, 13, 2018/10/11, 08:48:37.853, 673050042429, QTAgent32_40.exe, 异常:System.Runtime.InteropServices.COMException 消息:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。堆栈跟踪:在 Microsoft.VisualStudio.TestTools.UITest.Extension.Msaa.AccWrapper.get_State() 的 Accessibility.IAccessible.get_accState(Object varChild) BaseExceptionMessage:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。
E, 2964, 13, 2018/10/11, 08:48:37.857, 673050081579, QTAgent32_40.exe, 异常:System.Runtime.InteropServices.COMException 消息:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。堆栈跟踪:在 Microsoft.VisualStudio.TestTools.UITest.Extension.Msaa.AccWrapper.get_RoleInt() 的 Accessibility.IAccessible.get_accRole(Object varChild) BaseExceptionMessage:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。
E, 2964, 13, 2018/10/11, 08:48:37.860, 673050111131, QTAgent32_40.exe, 异常:System.Runtime.InteropServices.COMException 消息:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。堆栈跟踪:在 Microsoft.VisualStudio.TestTools.UITest.Extension.Msaa.AccWrapper.get_RoleInt() 的 Accessibility.IAccessible.get_accRole(Object varChild) BaseExceptionMessage:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。
W, 2964, 13, 2018/10/11, 08:48:38.247, 673053976659, QTAgent32_40.exe, Playback - {10} [SUCCESS] MouseButtonClick - "[Web]ControlType='Hyperlink' && TagName='A' && Id='' && Name='' && Target='' && InnerText='Clubs' && FilterCondition(AbsolutePath='/test.aspx', Title='', 'test.aspx', Class='', ControlDefinition= 'href="test', TagInstance='5')" 线程 0x4b50 已退出,代码为 0 (0x0)。E, 2964, 13, 2018/10/11, 08:48:46.403, 673135533276, QTAgent32_40.exe,异常:System.Runtime.InteropServices.COMException 消息:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。堆栈跟踪:在 Accessibility.IAccessible。get_accRole(Object varChild) at Microsoft.VisualStudio.TestTools.UITest.Extension.Msaa.AccWrapper.get_RoleInt() BaseExceptionMessage:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。
E, 2964, 13, 2018/10/11, 08:48:46.407, 673135575029, QTAgent32_40.exe, 异常:System.Runtime.InteropServices.COMException 消息:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。堆栈跟踪:在 Microsoft.VisualStudio.TestTools.UITest.Extension.Msaa.AccWrapper.get_State() 的 Accessibility.IAccessible.get_accState(Object varChild) BaseExceptionMessage:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。
E, 2964, 13, 2018/10/11, 08:48:46.411, 673135615631, QTAgent32_40.exe, 异常:System.Runtime.InteropServices.COMException 消息:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。堆栈跟踪:在 Microsoft.VisualStudio.TestTools.UITest.Extension.Msaa.AccWrapper.get_RoleInt() 的 Accessibility.IAccessible.get_accRole(Object varChild) BaseExceptionMessage:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。
E, 2964, 13, 2018/10/11, 08:48:46.414, 673135644030, QTAgent32_40.exe, 异常:System.Runtime.InteropServices.COMException 消息:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。堆栈跟踪:在 Microsoft.VisualStudio.TestTools.UITest.Extension.Msaa.AccWrapper.get_RoleInt() 的 Accessibility.IAccessible.get_accRole(Object varChild) BaseExceptionMessage:错误 HRESULT E_FAIL 已从对 COM 组件的调用中返回。
W, 2964, 13, 2018/10/11, 08:48:46.524, 673136740553, QTAgent32_40.exe, IEDOMPlugin: 由于有效性检查失败,无法添加属性 Src。禁用 ApplySmartConfiguration 标志以绕过有效性检查。W, 2964, 13, 2018/10/11, 08:48:46.712, 673138627073, QTAgent32_40.exe, Playback - {11} [SUCCESS] MouseButtonClick - "[Web]ControlType='Button' && TagName='INPUT' && Id='ctl00_ContentPlaceHolder1_btnNewClub' && Name='ctl00$ContentPlaceHolder1$btnNewClub' && FilterCondition(DisplayText='Add Club', Type='submit', Title='', Class='btn btn-success mr-5 mb-5 btn -xs mr-5',ControlDefinition='name="ctl00$ContentPlaceHolder1$btnNewCl',TagInstance='8')"
当它不是时的输出
685922211403,QTAgent32_40.exe,播放 - {9} [SUCCESS] MouseButtonClick - “[Web]ControlType='Button' && TagName='INPUT' && Id='ctl00_ContentPlaceHolder1_btnNext' && Name='ctl00$ContentPlaceHolder1$btnNext' && FilterCondition( DisplayText='Next', Type='submit', Title='', Class='btn btn-success mr-5 mb-5 btn-xs mr-5', ControlDefinition='name="ctl00$ContentPlaceHolder1$btnNext" ', TagInstance='8')" W, 10996, 13, 2018/10/11, 09:10:15.374, 686025189722, QTAgent32_40.exe, IEDOM:ZoomPercentage:尝试缩放时出现异常:System.Runtime.InteropServices。 InvalidComObjectException:无法使用已与其基础 RCW 分离的 COM 对象。在 System.StubHelpers。InterfaceMarshaler.ConvertToNative(Object objSrc, IntPtr itfMT, IntPtr classMT, Int32 flags) 在 Microsoft.VisualStudio.TestTools.UITest.Extension.IE.Communication.Interop.IECommunicatorClass.PageZoom(Object punkWebBrowser) 在 Microsoft.VisualStudio.TestTools.UITest.Extension .IE.DocumentManager.get_ZoomPercentage() W, 10996, 13, 2018/10/11, 09:10:15.419, 686025645733, QTAgent32_40.exe, IEDOM:ZoomPercentage:尝试缩放时出现异常:System.Runtime.InteropServices.InvalidComObjectException : 已与其底层 RCW 分离的 COM 对象不能使用。在 Microsoft.VisualStudio.TestTools.UITest.Extension.IE.Communication.Interop.IECommunicatorClass 的 System.StubHelpers.InterfaceMarshaler.ConvertToNative(Object objSrc,IntPtr itfMT,IntPtr classMT,Int32 标志)。PageZoom(Object punkWebBrowser) at Microsoft.VisualStudio.TestTools.UITest.Extension.IE.DocumentManager.get_ZoomPercentage() W, 10996, 13, 2018/10/11, 09:10:15.544, 686026897425, QTAgent32_40.exe, IEDOM : ZoomPercentage :尝试缩放时出现异常:System.Runtime.InteropServices.InvalidComObjectException:无法使用已与其基础 RCW 分离的 COM 对象。在 Microsoft.VisualStudio.TestTools.UITest.Extension.IE.Communication.Interop.IECommunicatorClass.PageZoom(Object punkWebBrowser) 在 Microsoft.VisualStudio.System.StubHelpers.InterfaceMarshaler.ConvertToNative(Object objSrc, IntPtr itfMT, IntPtr classMT, Int32 flags)。 TestTools.UITest.Extension.IE.DocumentManager.get_ZoomPercentage() W, 10996, 13, 2018/10/11, 09:10:15.546, 686026913893, QTAgent32_40.exe, IEDOM : ZoomPercentage: 尝试缩放时出现异常:System.Runtime.InteropServices.InvalidComObjectException:无法使用已与其基础 RCW 分离的 COM 对象。在 Microsoft.VisualStudio.TestTools.UITest.Extension.IE.Communication.Interop.IECommunicatorClass.PageZoom(Object punkWebBrowser) 在 Microsoft.VisualStudio.System.StubHelpers.InterfaceMarshaler.ConvertToNative(Object objSrc, IntPtr itfMT, IntPtr classMT, Int32 flags)。 TestTools.UITest.Extension.IE.DocumentManager.get_ZoomPercentage() W, 10996, 13, 2018/10/11, 09:10:15.566, 686027113668, QTAgent32_40.exe, IEDOM:ZoomPercentage:尝试缩放时出现异常:System. Runtime.InteropServices.InvalidComObjectException:无法使用已与其基础 RCW 分离的 COM 对象。在 System.StubHelpers.InterfaceMarshaler。ConvertToNative(Object objSrc, IntPtr itfMT, IntPtr classMT, Int32 flags) 在 Microsoft.VisualStudio.TestTools.UITest.Extension.IE.Communication.Interop.IECommunicatorClass.PageZoom(Object punkWebBrowser) 在 Microsoft.VisualStudio.TestTools.UITest.Extension.IE .DocumentManager.get_ZoomPercentage() W, 10996, 13, 2018/10/11, 09:10:15.576, 686027216184, QTAgent32_40.exe, IEDOM:ZoomPercentage:尝试缩放时出现异常:System.Runtime.InteropServices.InvalidComObjectException:COM无法使用已与其底层 RCW 分离的对象。在 Microsoft.VisualStudio.TestTools.UITest.Extension.IE.Communication.Interop.IECommunicatorClass.PageZoom(Object punkWebBrowser) 的 System.StubHelpers.InterfaceMarshaler.ConvertToNative(Object objSrc, IntPtr itfMT, IntPtr classMT, Int32 flags)。
解决方案
最终我找到了原因,看起来我的 IE 浏览器设置为 110% 缩放(我怀疑是无意中通过键盘),改回 100% 并且测试再次成功开始调试
推荐阅读
- swift - 更新模型时不更新详细视图(使用列表)SwiftUI
- azure - azure 函数应用程序 python 请求在本地工作正常,但从函数应用程序给出连接错误
- docker - 如何在不运行 docker 镜像的情况下查看文件?
- sql - 将“约翰·乔·史密斯先生”分成“先生”“约翰”“乔”“史密斯”
- django - 为什么在 Django 的 AllowAny 视图中,我使用 Firefox 得到 401 Unauthorized 但不使用 Edge 或 Postman?
- python - grpc python一元微服务无法连接到另一个服务
- python-3.x - 如果 dynamoDB 表项不存在,如何为其添加属性并向该属性添加值?
- javascript - 带小数的 Javascript 机会
- java - Spring Boot 2.2 管理端点不能与外部 Jetty 一起使用
- c - 打印不带“.”的首字母 作为最后一个字符