1

我第一次尝试使用内部应用程序进行 Silktest。在其中一个窗口中,我有一个包含两个菜单列表的按钮:

New (pushbutton) ---> Option1 (list menu ) + Option2
if option1 clicked ---> subOption1, subOption2?

所有这些选项都特定于当前场景和用户。

录制时,silktest 检测到“新建”按钮,但在播放时,它会抛出错误:the handle of the object is invalidated.

一种可能的解决方案是像这样实例化 Object:

dim button as New Pushbutton  

但它会引发错误:SilkTest.ntf.Pushbutton.Friend sub New (handle as silk test.ntf.ObjectHandle) is not accessible in this context because it is 'Friend'

有人可以帮忙吗?有什么建议么??

4

2 回答 2

0

当您尝试使用不再有效的对象时,会引发“无效对象句柄异常”,例如考虑关闭的对话框,然后您尝试对其进行操作,它将不再起作用。有时情况并不那么明显,但基本原理是相同的。

另外,不要构造 PushButtons,使用 find 方法获取它们,这将确保它们包含有效的对象句柄。

Dim myButton As PushButton = myDialog.Find("//PushButton[@caption='New']")
myButton.Select()
于 2011-09-16T11:04:45.623 回答
0

尽量确保焦点在您要按下的按钮上。如果使用 Silk4j,请先尝试在该元素甚至其父元素上设置焦点()。

于 2020-02-27T17:14:41.767 回答