2014-05-07 23 views
0

我有一个复杂的Wpf应用程序,它带有许多嵌套元素。我想测试应用程序UI,并创建了一个编码UI测试。在应用程序的某处有一个telerik RadComboBox,我想更改它的选定项目。当它尝试更改组合框选定项目时,测试总是失败。它引发此异常:ComboBox上的编码UI失败

试验方法CodedUITestProject2.CodedUITest1.CodedUITestMethod1抛出 例外: Microsoft.VisualStudio.TestTools.UITest.Extension.FailedToPerformActionOnBlockedControlExcepti 上:另一种控制阻塞控制。请使阻止的控件可见并重试该操作。 其他详情:TechnologyName: 'UIA' FrameworkId: 'WPF' ControlType: '组合框'

XAML代码是如下:

<telerik:RadComboBox Height="{StaticResource ResourceKey=defaultHeight}" Margin="{StaticResource ResourceKey=DefaultMargin}" Name="serverName" DropDownOpened="serverName_DropDownOpened" 
       Grid.Column="1" IsEditable="True" TextBoxBase.TextChanged="serverName_TextChanged"> 
      <telerik:RadComboBox.Items> 
       <ComboBoxItem> 
        <TextBlock FontStyle="Italic" Foreground="Gray" text="sqlconnection"/> 
       </ComboBoxItem> 
      </telerik:RadComboBox.Items> 
</telerik:RadComboBox> 

我不明白为什么会这样。

我该如何解决这个问题?
任何答复赞赏。

回答

1

假设组合框未隐藏,如消息所示,是否添加了Telerik UI assembly?好像MS编码的UI引擎无法与指定的控件进行交互。

+0

坦克Ryan.i按照您建议的链接[Telerik UI组装](http://www.telerik.com/help/wpf/coded-ui-support.html)中的步骤操作。注意到变化。我仍然得到同样的例外 –

+0

Kamran,你用什么来定义你的对象?邮政编码,如果可能的话。 –

+0

瑞恩,哪个对象?你能解释更多吗? –