无法重新播放作为自定义控件一部分的按钮的录制的编码UI测试操作

时间:2011-07-19 23:39:08

标签: coded-ui-tests

我使用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指向不同的控件。

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

2 个答案:

答案 0 :(得分:0)

有时控件会呈现为其他控件的组合。 录音机找到按钮后,查看它是否有子控件(单击向下箭头或Alt +向下),like here。在测试Silverlight应用程序时,这种情况发生在我身上几次,图像或文本阻止实际按钮。 希望这会有所帮助。

答案 1 :(得分:0)

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

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

    鼠标。点击(新点(r.X + r.Width / 2,r.Y + r.Height / 2));