如何在右键单击时验证是否存在Contextmenu?

时间:2014-06-22 17:33:35

标签: testcomplete

我需要验证在单击WPF应用程序中的特定元素时是否出现右键菜单/上下文菜单。 目前,当我在右键单击后使用上下文菜单的整个引用时,我的脚本失败。 Find Child是个不错的选择吗? 我正在使用TC9和jscript。

提前致谢!

1 个答案:

答案 0 :(得分:1)

是的,您可以使用 FindChild 方法确保对象存在且可见。例如:

function Test1()
{
  var orders = Sys.Process("Orders");
  var listView = orders.WPFObject("HwndSource: MainForm").WPFObject("MainForm").WPFObject("gridMain").WPFObject("OrdersView");
  listView.ClickR(106, 82);

  var menu = orders.FindChild(["NativeClrObject.Name", "VisibleOnScreen"], ["ViewContextMenu", true], 10);
  if (menu.Exists)
    Log.Message("The menu is displayed");
  else
    Log.Error("The menu is not displayed");
}

这里一个棘手的问题是获取上下文菜单对象的属性,因为在未显示菜单时它不能在对象浏览器中列出。要解决此问题,请使用Object Spy工具,并使用指向对象并修复功能。