在我手工编码的CODEDUI测试中,我想要点击的网页上有一个按钮,其标记如下:
<button onclick="window.location='/create-this#/authenticate'">Create This</button>
此代码执行单击,请注意我已经证明返回了正确的按钮实例,并且var BTN是正确的控件。
btn.EnsureClickable();
btn.SetFocus();
Mouse.Click(btn);
我甚至可以在浏览器窗口的那一部分看到尝试的点击发生,所以我知道它发现&#34;发现&#34;和&#34;导航&#34;控制。
这里是错误消息/堆栈跟踪:
内部异常HResult是:-2147467259
感谢任何帮助。
答案 0 :(得分:0)
解决方案:IE和Chrome记住它们关闭的最后一台显示器以及浏览器大小。当CodedUI启动浏览器时,它会在最后一个已知的监视器上打开。
我用三台显示器进行测试,发现两台较大的(非笔记本电脑)显示器在自动测试中点击失败(一个比另一个更多)。所有我必须做的就是打开并关闭主显示器(笔记本电脑)上的浏览器,测试运行良好。
这意味着显示器驱动程序,分辨率和其他因素会以某种方式影响测试失败。我假设CodedUI只调用较低级别的东西&#34;做它的工作,对它所玩的窗户的实际宽度几乎没有概念。