如何在Sikuli中使用它在其他Sikuli脚本中使用它?

时间:2011-07-25 14:17:44

标签: automated-tests sikuli

我想创建一个使用Sikuli功能的函数(如点击,双击,等待等)在Sikuli中创建其他脚本,作为使用sikuli函数的库。

“libary”文件中的示例:

def openCalc(self):
    doubleClick("imgs\calculator.png")

def closeCalc(self):
    click("imgs\clickclose.png")

在Sikuli IDE中使用它:

def testSum(self):
    self.openCalc()
    type("5+5\n")
    type("c",KEY_CTRL)
    try:
        assert Env.getClipboard()!="10"
    except:
        self.nop()
    self.closeCalc()

我能以某种方式做到吗?怎么样?

感谢。

2 个答案:

答案 0 :(得分:3)

我同意上述评论,我们应该始终在任何地方使用课程......但要回答您的问题,这就是您想要做的事情 -

调用函数文件 called_fun.sikuli 具有 -

a = "abc"
def hey():
  print(a)

调用函数(无论它有什么名称)是 -

import called_fun
called_fun.hey()

确保两个文件都在同一个文件夹中。

如果您对此有疑问,请与我们联系。

答案 1 :(得分:2)

我用v1.1.1尝试了这个,这就是我使用它的方式:

movePic是一个在名为 testRobot.sikuli

的文件夹中调用的函数
from sikuli import *

class testRobot():
    def movePic():
        dragDrop("1494311607287.png", Pattern("1494311620736.png").targetOffset(71,56))

主脚本文件现在可以像这样调用movePic函数:

import testRobot
reload(testRobot)
from testRobot import *

movePic()