在具有动态“ AutomationID”且没有“ Name”属性的WPF自动化方面出现问题-C#

时间:2019-10-28 15:47:59

标签: c# wpf ui-automation microsoft-ui-automation teststack

我一直在尝试使用C#自动执行Windows程序。在使用Windows Kits(SDK)中的Inspect.exe之后,似乎我尝试使用的许多元素都 not 没有静态的AutomationID,元素名称等。问题是这些元素可能与WPF的同一窗格中的其他元素具有相同的属性,因此,我试图找出确定所需元素的最佳方法。

克服此问题的最佳方法是什么?

Inspect.exe screenshot of one of the elements (for reference)

我已经研究了Windows UIAutomation库以及TestStack.White,但是我愿意提出建议。

注意:

  • 程序已安装在客户端计算机上。
  • 使用Spy ++,它找不到WPF中的元素,而只是找到元素所在的父容器。
  • 我在开发机(Windows 10)上安装了Windows应用程序驱动程序(和UI记录器),但是我要自动化的程序驻留在Windows 8.1上,WAD似乎不支持。 (如果我错了,请纠正我。)
  • 使用WAD UI记录器,我可以获取元素的XPATH。
  • BoundingRectangle属性似乎根据窗口的大小而改变,当前与该程序配合使用的第三方自动化程序似乎间歇地以不同大小显示窗口。

0 个答案:

没有答案