Automated tests 如何在Sikuli中创建函数以在其他Sikuli脚本中使用它?

Automated tests 如何在Sikuli中创建函数以在其他Sikuli脚本中使用它?,automated-tests,sikuli,Automated Tests,Sikuli,我想创建一个函数,它使用Sikuli功能(如单击、双击、等待等)在Sikuli中创建其他脚本,作为使用Sikuli函数的库 “库”文件中的示例: 并在Sikuli IDE中使用它: def testSum(self): self.openCalc() type("5+5\n") type("c",KEY_CTRL) try: assert Env.getClipboard()!="10"

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

“库”文件中的示例:

并在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()
    

我能以某种方式做到这一点吗?如何使用?

我同意上面的意见,我们应该尽可能地使用课堂。。。但要回答你的问题,以下是你想做的事情的方法-

调用函数文件调用函数。sikuli已-

a = "abc"
def hey():
  print(a)
调用函数(不管它有什么名字)是-

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


如果您对此有任何疑问,请告诉我。

我同意上述意见,即我们应该尽可能使用课堂。。。但要回答你的问题,以下是你想做的事情的方法-

调用函数文件调用函数。sikuli已-

a = "abc"
def hey():
  print(a)
调用函数(不管它有什么名字)是-

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


如果您对此有任何疑问,请告诉我。

我在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()

我在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()

你说的图书馆档案是什么意思?您可以使用其中定义的方法创建一个类,然后从另一个类调用该方法。我想我对你的要求了解得不够。那么你说的图书馆档案是什么意思?您可以使用其中定义的方法创建一个类,然后从另一个类调用该方法。我想我对你的要求了解得不够。有时我会因为sikuli找不到图像而出错,但你的代码我没有这个错误,所以+1这是sikuli的核心功能,它应该找到图像。。。所以代码:“from sikuli import*”是+1的原因,有时我会出错,因为sikuli找不到图像,但用你的代码我不会出错,所以+1这是sikuli的核心功能,它应该找到图像。。。所以代码:“from sikuli import*”是+1的原因