我无法在codedui中选择UWP ListView项目
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我无法在codedui中选择UWP ListView项目相关的知识,希望对你有一定的参考价值。
我有一个UWP应用程序,我正在使用CodedUI进行UWP
它包含一个作为ListView创建的报告,我需要验证此列表中的一些值。但是当我尝试使用十字准线工具将其拖动到行或列表上时,应用程序一直挂起,当我成功捕获行时,我运行测试用例失败,因为Codedui无法找到控件。
在附图中,我可以捕获“主页”选项卡按钮和其他选项卡以及下方和下方的按钮,但是如果我在列表上拖动交叉头发工具,它会一直挂起应用程序,直到我关闭它
答案
我可能有你的问题的替代方案。下面的代码将采用父控件并通过它进行筛选,直到所有子项以递归方式添加,尊重控件层次结构。这样,您将在运行时拥有所有可用的listview项。如果在列表视图项集合发生更改时使KeyValuePair保持最新,则控制未找到的异常不应成为问题。
使用这种递归方法:
public ParentControl GetChildControls(UITestControl parentControl)
{
ParentControl parent = new ParentControl();
if (parentControl != null)
{
List<ParentControl> children = new List<ParentControl>();
foreach (UITestControl childControl in parentControl.GetChildren())
{
children.Add(GetChildControls(childControl));
}
parent.Children = new KeyValuePair<UITestControl, List<ParentControl>>(parentControl, children);
}
return parent;
}
ParentControl对象:
public class ParentControl
{
public KeyValuePair<UITestControl, List<ParentControl>> Children { get; set; }
public string Value
{
get
{
return Children.Key.Name;
}
}
}
儿童酒店是强制性的,其他酒店是可选的。
以上是关于我无法在codedui中选择UWP ListView项目的主要内容,如果未能解决你的问题,请参考以下文章