0

我只是在为我们的一项自动化测试评估 sikuli。我正在尝试执行一个可以在区域中找到图像位置的脚本。

这是我编写的 .sikuli 脚本。

match = find("regionImage.png")  # The actual image here.
z = match.findAll("requiredImage.png")
for icon in z:
    print icon.getTarget()
    click(icon)
    time.sleep(3)

 #Output
 L(693,464)@S(0)[0,0 1920x1080]
 L(693,519)@S(0)[0,0 1920x1080]

我遇到的问题是 getTarget 给出了与整个屏幕对应的坐标。完美的是获得相对于设定区域的位置。可能吗?(当然你总是可以减去但只是想知道是否有更好的方法)

4

2 回答 2

1

您正在使用的getTarget()方法返回一个类对象Location,在这种情况下指向当前 Match对象的中心。这场比赛不知道Region它所在的位置。

实现目标的唯一方法是手动计算。这不应该是一项复杂的任务,因为 Sikuli 在模式位置方面公开了一个不错的 API。看看这里的文档以获得一些想法。

于 2016-07-07T02:25:20.247 回答
1

也许您正在寻找.getX().getY()

于 2016-08-30T12:18:08.367 回答