C# Teststack.White 自动化 Winforms 菜单 (ControlType.Menu),它不是主 window 的子菜单
C# Teststack.White automating Winforms Menu (ControlType.Menu) which is not child of the main window
我正在使用 Teststack.White 自动化遗留 WinForms 应用程序,我遇到了一个问题。
右键单击某些项目后出现的菜单,出于某种原因 似乎在 UI 层次结构中的主应用程序 window 之外:
实现此菜单自动化的最佳方法是什么?
我们的测试框架是围绕 window 层次结构构建的,我们访问的项目是主应用程序 window.
的子项
现在我们通过使用 键盘箭头 到 select 菜单项并单击 Enter(这不是最好的解决方案,我想)。
在Teststack.White中有没有更好的方法来解决这个问题?谢谢!
在所有桌面下搜索即可找到右键菜单windows。请参阅下面的代码:
//调用函数GetCurrentPopUpMenu
PopUpMenu pop = GetCurrentPopUpMenu();
pop.Item("Add Child").Click();
//GetCurrentPopUpMenu函数
PopUpMenu GetCurrentPopUpMenu()
{
List<Window> windows = WindowFactory.Desktop.DesktopWindows();
foreach (Window w in windows)
{
if (w.Name == "") return w.Popup;
}
return null;
}
我正在使用 Teststack.White 自动化遗留 WinForms 应用程序,我遇到了一个问题。 右键单击某些项目后出现的菜单,出于某种原因 似乎在 UI 层次结构中的主应用程序 window 之外:
实现此菜单自动化的最佳方法是什么? 我们的测试框架是围绕 window 层次结构构建的,我们访问的项目是主应用程序 window.
的子项现在我们通过使用 键盘箭头 到 select 菜单项并单击 Enter(这不是最好的解决方案,我想)。
在Teststack.White中有没有更好的方法来解决这个问题?谢谢!
在所有桌面下搜索即可找到右键菜单windows。请参阅下面的代码:
//调用函数GetCurrentPopUpMenu
PopUpMenu pop = GetCurrentPopUpMenu();
pop.Item("Add Child").Click();
//GetCurrentPopUpMenu函数
PopUpMenu GetCurrentPopUpMenu()
{
List<Window> windows = WindowFactory.Desktop.DesktopWindows();
foreach (Window w in windows)
{
if (w.Name == "") return w.Popup;
}
return null;
}