telerik:RadDiagramShape在编码的ui测试中不显示内部元素

时间:2014-05-10 12:56:59

标签: c# wpf telerik coded-ui-tests

我有一个telerik:RadDiagramShape,我在其中放置了两个图像。 但编码的UI测试生成器无法识别内部元素。如何修复代码以便编码的UI Test Builder检测图像? 这是我的xaml代码:

<telerik:RadDiagramShape>

     <Grid>
         <Image Source="Images/refresh.png" Name="imgRefresh"
            Stretch="Uniform" >

           <Image.RenderTransform>
             <RotateTransform Angle="-45" CenterX="10" CenterY="10" />
           </Image.RenderTransform>
      </Image>


      <Image Name="imgState" Source="{x:Null}" HorizontalAlignment="Right"
           VerticalAlignment="Top" Width="20" Height="20" Stretch="Uniform"
           Grid.Row="0"
            MouseUp="imgState_MouseUp" Cursor="Hand" />
  </Grid>
</telerik:RadDiagramShape>

任何赞赏的建议。

1 个答案:

答案 0 :(得分:0)

如果您正确定义了UITestControl对象,即指定正确的搜索和过滤器属性,则应该能够找到它。例如,在上面的代码中,您可以将图像设置为

HtmlImage imgState = new HtmlImage();
imgState.SearchProperties["name"] = "imgState";
return imgState;

如果这不起作用,请尝试为组合框设置一些标识属性,例如ID或名称,然后逐步降低。

HtmlComboBox parent = new HtmlComboBox();
parent.SearchProperties["name"] = "<myName>";
HtmlImage target = new HtmlImage(parent);
target.SearchProperties["name"] = "imgState";
return target;

当然,根据您的具体情况,这两个对象都可以在任何UITestControl类中定义。编码用户界面就是要正确定义您的页面对象,所以一旦您确定了在您正在查看的任何页面上找到它们的最佳方式,您的测试就会开始落实到位。