我正在尝试使用Project White为我的WPF应用程序编写自动化测试。一切都很顺利,直到我尝试与Infragistics控件进行交互。有没有人有过这种设置的经验,你能发布一个我如何(例如)与XamRibbon或XamOutlookBar进行交互的示例吗?
发布于 2010-06-14 21:14:15
我担心这是一个通用的答案,但如果怀特不能帮助你,你可以直接使用Microsoft UI Automation。
首先,找到你的控制力。如果它有一个WPF "Name“,那么它可能有一个与该名称匹配的自动化id:
AutomationElement element = AutomationElement.Root.FindFirst(
TreeScope.Descendants,
new PropertyCondition(AutomationElement.AutomationIdProperty, <whatever>))或者,您可以使用NameProperty、ControlTypeProperty或ClassProperty等工具,这些工具主要映射到文本或标题。您可以随时使用FindAll为您提供有关可用控件的更多信息。
找到控件后,打印出其支持的模式和属性:
element.GetSupportedPatterns()
element.GetSupportedProperties()这些属性返回信息。这些模式类似于ListItemPattern、GridPattern,并允许您访问更多特定于组件的值。您可能会找到一种模式或属性来满足您的需求。White部分构建在此之上,因此它可能会帮助您找出可以使用的White组件。例如:
((TogglePattern)Element.GetCurrentPattern(TogglePattern.Pattern)).Toggle()Snoop是一款无需打印输出即可帮助您获取此信息的应用程序:http://snoopwpf.codeplex.com/
https://stackoverflow.com/questions/2920593
复制相似问题