编码的用户界面 - 如何在新的IE窗口打开时引入焦点?

时间:2015-08-13 05:38:45

标签: c# internet-explorer automation coded-ui-tests

我正在使用Coded UI(C#语言)来录制和播放一系列事件。在其中,有一个加号,在点击时打开另一个IE窗口。我现在要在这个新的浏览窗口上执行某些操作。

显然,我确实记录了这些步骤并且它已经在我的脚本中生成为代码,但在回放时,这个新窗口会刷新自己几次,我猜它会失去焦点。因此,CUIT无法搜索要在新窗口上执行的第一步。你能帮帮我一下吗?就如何更改我的脚本以重新关注这个新窗口一样。

您猜错的错误是:

  

Microsoft.VisualStudio.TestTools.UITest.Extension.UITestControlNotFoundException:   播放无法通过给定搜索找到控件   属性..

1 个答案:

答案 0 :(得分:1)

根据您的父窗口和子窗口是否具有相同的标题,您可以执行以下操作:

IF 您的两个窗口都具有相同的标题

您可以使用Sendkeys将焦点恢复到您的子/父窗口。

  Keyboard.SendKeys("^{TAB}");

因此,如果您在子页面上并需要回到父级页面,请确保将重点放在首先显示的窗口(子级)上,然后使用Sendkeys选项卡转到你想要的窗口 - 否则Sendkeys不会像你想要的那样工作。

IF 您的父母和孩子有不同的标题

您可以使用BrowserWindow.Locate将焦点恢复到父/子窗口。

BrowserWindow.Locate("ParentTabTitle");