我们使用自定义的、自定义的列表视图控件和列表视图项,这些控件和列表视图项并不实现可访问性,因此编码的ui测试不会真正与它们一起工作。我正在尝试实现可访问性,但我真的不确定我在做什么。
这两个例子我都已经看过了(我找不到其他的例子):http://msdn.microsoft.com/en-us/library/system.windows.forms.accessibleobject(v=vs.110).aspx http://blogs.msdn.com/b/mathew_aniyan/archive/2011/05/17/enabling-ui-testing-for-third-party-winforms-custom-controls-1.aspx
我已经可以使用编码的UI测试来突出显示、单击和断言listview项,但是在回放选择正确的项时,我仍然遇到问题。
我想这是因为我的listviewitem的AccessibleObject上的Name属性:
Public Overrides Property Name As String
Get
Return p_itmOwner.SubItems(0).Text.ToString
End Get
Set(value As String)
p_itmOwner.SubItems(0).Text.SetValue = value
End Set
End Property我注意到,如果列表视图中有多个项目,其中第一列是相同的,它将只选择它找到的第一个项目。使ListItem可访问的正确方法是什么?我也许可以在Name属性中附加所有列的文本,但对我来说,这似乎不是正确的解决方案。
发布于 2014-02-27 03:45:22
Coded UI在找到符合搜索条件的第一个控件后停止搜索。
可以尝试查找所有匹配的列表项,然后选择正确的列表项。对不起,它是C#格式的。
UITestControlCollection matchingListItems = listItem.FindMatchingControls();
((WinListItem)matchingListItems[matchingItemIndex]).Select();https://stackoverflow.com/questions/22023751
复制相似问题