.net SilkTest workbench对象句柄异常无效?
我第一次用内部应用程序尝试silktest。在其中一个窗口中,我有一个按钮,它有两个菜单列表:.net SilkTest workbench对象句柄异常无效?,.net,object,handle,custom-object,silktest,.net,Object,Handle,Custom Object,Silktest,我第一次用内部应用程序尝试silktest。在其中一个窗口中,我有一个按钮,它有两个菜单列表: New (pushbutton) ---> Option1 (list menu ) + Option2 if option1 clicked ---> subOption1, subOption2? 所有这些选项都特定于当前场景和用户 录制时,silktest会检测到“新建”按钮,但播放时会抛出错误:对象的句柄无效。 可能的解决方案之一是实例化对象,如下所示: dim button a
New (pushbutton) ---> Option1 (list menu ) + Option2
if option1 clicked ---> subOption1, subOption2?
所有这些选项都特定于当前场景和用户
录制时,silktest会检测到“新建”按钮,但播放时会抛出错误:对象的句柄无效。
可能的解决方案之一是实例化对象,如下所示:
dim button as New Pushbutton
但它抛出一个错误:SilkTest.ntf.butdown.Friend sub New(句柄为silk test.ntf.ObjectHandle)在此上下文中不可访问,因为它是“Friend”
有人能帮忙吗?有任何建议吗?< P> >“无效对象句柄异常”是在尝试使用不再有效的对象时抛出的,例如,关闭一个对话框,然后尝试使用它,它将不再工作。有时情况并非如此明显,但基本原则是相同的
另外,不要构造按钮,使用find方法获取它们,这将确保它们包含有效的对象句柄
Dim myButton As PushButton = myDialog.Find("//PushButton[@caption='New']")
myButton.Select()
尽量确保焦点集中在你想按下的按钮上。如果使用silk4j,请尝试首先在此元素甚至其父元素上设置focus() 谢谢tehlexx的回答。但是,当我使用.Find方法时,它根本没有检测到按钮!在silktest中实例化按钮对象有不同的方法吗?我也尝试过等待对象,但没有任何区别。有什么建议吗?没有其他方法来实例化这些对象,您总是使用find。如果找不到对象,通常是因为定位器错误。找出对象定位器的最简单方法是记录它。