Squish:当按钮不在当前视图中时如何触发按钮动作

Squish: how to trigger button action when the button is not in current view

我在单击按钮时遇到问题,因为测试机器分辨率与创建测试时的分辨率不同。这会导致应用程序在当前视图中没有所有按钮(出现滚动条),因为它们不适合。有没有办法触发按钮动作,虽然它不在当前视图中,除了滚动直到按钮显示在当前视图中?

根据 Squish 的供应商,支持自动将目标对象滚动到 SWT 的可见区域,但嵌套会使这变得复杂且容易出错。我建议联系供应商让他们具体案例分析。

另一种方法是更改​​测试回放过程中的屏幕分辨率。相关的:

Executing external applications

Changing, setting screen resolution on Windows(在 Linux 上,通常可以使用 "xrandr" 来更改屏幕分辨率。)

另一种选择是从测试脚本访问 GUI 对象的 API,指示 parent/container(可能还有它们的所有父对象)将目标对象滚动到您自己的视图中。 Here is an example of that (in plain Java), which is using ScrolledComposite.setOrigin(int,int).