我正在使用VS 2012和Coded UI Test创建自动测试。当我使用我们的WPF应用程序记录测试并在ListBoxItem上创建MouseClick时(我们使用ListBoxes作为菜单),我在UI控制图中得到了一个错误的UI控件层次结构。
我期待以下树:
WPF-Window/TabControl/TabPage/RadExpander/MainMenuListBox/SelectedMenuListItem
但我得到以下 - 正如我所说 - 错误的树:
WPF-Window/RadExpander/MainMenuListBox/SelectedMenuListItem
当我回放录音时,无法找到WPF-Window
下的控件,因为树未完成。
当我在ListBox控件上录制DoubleClick时,我会得到正确的树。
所有控件都有AutomationIds。
UI控制树中出现错误的原因是什么?
提前致谢!
P.S .: 我现在制作了一个较小版本的WPF。 当我在其中一个ListBoxItem上创建一个MouseClick时,树就可以了。 但是当我在其中一个项目上制作DoubleClick时,树就错了。
答案 0 :(得分:0)
我有一个类似的问题,即构建器无法在TabControl
内找到任何控件,除非我手动搜索它。但是,即使手动添加控件也无法单击控件。
我找到了修复程序here,但在此之后我们很快就不再使用构建器了。所以修复工作正常,但我们没有彻底测试它。
具体部分是:
我查看了示例应用程序,发现在使用模板时这似乎是WPF TabControl中的一个错误,您需要在MainStyles.xaml TabControl样式定义中的ContentPresenter中指定正确的“名称”:
<ContentPresenter Name="PART_SelectedContentHost" ContentSource="SelectedContent" />
有关此here的更多信息。