如何与SWT_Window0内的对象进行交互?

时间:2018-04-17 12:41:23

标签: testing automated-tests qtp hp-uft

我遇到了一个问题,我需要自动化与SWT_Window0内部对象的交互。在这个窗口中,我有一个对象列表,需要单击并拖动到屏幕的另一部分。我附上了SWT_Window0的图片。

我的目标是点击“交叉表”并将其拖动到屏幕的右侧。我遇到的问题是UFT只能将整个窗口识别为一个对象,并且无法识别其中的任何内容,交叉表,Spreedsheet等。因此,我很难获得UFT点击“交叉表”标签。任何拥有更多UFT经验的人都可以分享一些有关如何点击SWT_Window0内的标签的想法吗? 我尝试了几种不同的方法来尝试点击SWT_Window0中的任何标签,但没有运气。我能得到的最近的就是使用UFT的记录,它给出了:

Window("Designer").WinObject("SWT_Window0").Click 64,34

但我无法使用这是我不想在我的测试中使用X,Y坐标,因为它们不可靠

"Window("Designer").WinObject("SWT_Window0").Click" Just clicks middle of the window.

我也尝试过其他类似的东西      点击2,       点击“Crosstab”,。按“交叉表”等但无效

我还将附加SWT_Window0

的属性
"Class Name:=WinObject",
"abs_x:=1925",
"abs_y:=118",
"attached text:=",
"enabled:=True",
"focused:=True",
"hashscroll:=False",
"hasvscroll:=True",
"height:=417",
"hscrollpagesize:=",
"hscrollposition:=",
"hwnd:=69930",
"leftscrollbar:=False",
"maxhscrollpos:=",
"maxvscrollpos:=1142",
"minhscrollpos:=",
"minvscrollpos:=0",
"nativeclass:=SWT_Window0",
"object class:=SWT_Window0",
"regexpwndclass:=SWT_Window0",
"regexpwndtitle:=",
"rightaligned:=False",
"righttoleftlayout:=False",
"righttoleftreading:=False",
"text:=",
"visible:=True",
"vscrollpagesize:=418",
"vscrollposition:=0",
"width:=376",
"window id:=0",
"windowextendedstyle:=1048576",
"windowstyle:=1445003264",
"x:=13",
"y:=126"

Screenshot

2 个答案:

答案 0 :(得分:0)

SWT是一个Java工具包(Standard Widget Toolkit)。 我建议你尝试使用UFT' Java addin

如果这没有帮助,您可以尝试使用Insight(基于图像的测试)。

答案 1 :(得分:0)

在继续使用其他解决方案之前,请联系HPE(Microfocus)支持并确保他们尽一切可能将这些对象识别为Java对象。如果无法帮助您将对象识别为Java对象,那么您的可能性是:

<强> 1。 Mercury.DeviceReplay

DragAndDrop方法。您需要知道源和目标的协调(这需要静态分辨率)

<强> 2。虚拟对象

在您需要的区域创建2个虚拟对象。在源OBject上调用Drag方法,在Target the Drop上。限制又是决议。