0

我使用 VS 2010 Coded UI Test 将Click操作记录到combobox由 和 按钮组成的自定义控件combobox并生成代码。

然后我使用 VS 2010 Coded UI Test 记录Click对自定义控件按钮的操作,该按钮由combobox按钮和生成的代码组成。

当我重播组合框上的单击时,它工作正常。

当我重播按钮上的单击时,我遇到了一个异常:

Cannot perform 'Click' on the hidden control

刷新后编码的 UI 测试可以找到并突出显示按钮。
它似乎UIMap.Designer生成了正确的控件声明。
在我尝试对按钮执行“单击”之前SetFocus
如果我得到ControlCollection并显示BoundingRectangle集合中每个控件的属性的消息,则BoundingRectangle指向不同的控件。

如何使自定义控件的按钮上录制的“单击”可重新播放。

4

2 回答 2

0

有时控件呈现为其他控件的组合。记录器找到您的按钮后,查看它是否有子控件(单击向下箭头或 Alt + 向下)像这儿,. 这在我测试 Silverlight 应用程序时发生了好几次,图像或文本阻塞了实际按钮。希望这可以帮助。

于 2011-07-20T12:35:14.937 回答
0

尝试以下解决方案一次,因为边界矩形是否正确:-

  1. 执行 ButtonControl.DrawHighlight()。检查整个正确的按钮边界是否突出显示。
  2. ButtonControl.BoundingRectangle。这会返回非零值吗?
  3. 如果 [2] 为真,则 Rectangle r = ButtonControl.BoundingRectangle。

ButtonControl.SetFocus()

Mouse.Click(new Point(rX + r.Width/2, rY + r.Height/2));

于 2016-03-30T11:35:44.017 回答