Jython 将外部Sikuli类导入1个Sikuli脚本

Jython 将外部Sikuli类导入1个Sikuli脚本,jython,sikuli,Jython,Sikuli,背景 我目前正在Sikuli/Jython中创建实用程序类,供其他人用于自动化测试创建。现在,我在将实用程序Sikuli文件导入主Sikuli文件时遇到问题。有什么建议可以帮助你吗 目前,我正在尝试将我创建的实用程序文件集成到主文件中。该实用程序将允许我通过返回0、1或2的整数来检查是否打开了某些程序。根据返回的内容,主文件将根据需要聚焦或打开它们 myUtilities是Sikuli文件 实用程序是类名 programOne是其中一个定义 我试过: from myUtilities impor

背景

我目前正在Sikuli/Jython中创建实用程序类,供其他人用于自动化测试创建。现在,我在将实用程序Sikuli文件导入主Sikuli文件时遇到问题。有什么建议可以帮助你吗

目前,我正在尝试将我创建的实用程序文件集成到主文件中。该实用程序将允许我通过返回0、1或2的整数来检查是否打开了某些程序。根据返回的内容,主文件将根据需要聚焦或打开它们

myUtilities是Sikuli文件

实用程序是类名

programOne是其中一个定义

我试过:

from myUtilities import *

myApp = App("C:\Users\myname\Desktop\Sikuli\myApp.exe")

activeCheck = utilities.programOne()

if(activeCheck == 0):
    myApp.open()
    wait(10)
else:
    myApp.focus()
我曾尝试更改导入语法并将实用程序文件中的类公开,但同样的问题也出现了。我不知道还有什么好尝试的

代码:

from myUtilities import *

myApp = App("C:\Users\myname\Desktop\Sikuli\myApp.exe")

activeCheck = utilities.programOne()

if(activeCheck == 0):
    myApp.open()
    wait(10)
else:
    myApp.focus()
我所期待的:

from myUtilities import *

myApp = App("C:\Users\myname\Desktop\Sikuli\myApp.exe")

activeCheck = utilities.programOne()

if(activeCheck == 0):
    myApp.open()
    wait(10)
else:
    myApp.focus()
主文件可以使用实用程序文件中的类及其定义,但当前该文件不起作用

我得到的是这个错误:

from myUtilities import *

myApp = App("C:\Users\myname\Desktop\Sikuli\myApp.exe")

activeCheck = utilities.programOne()

if(activeCheck == 0):
    myApp.open()
    wait(10)
else:
    myApp.focus()

[错误]错误原因:回溯(最近一次调用):文件“C:\Users\myname\Desktop\Sikuli\testClasses.Sikuli\testClasses.py”,第1行,从myUtilities导入*文件“C:\Users\myname\AppData\Roaming\Sikulix\Lib\Sikuli\SikuliImporter.py”,第41行,在加载模块返回self.\u加载模块(模块名称)文件中“C:\Users\myname\AppData\Roaming\Sikulix\Lib\sikuli\SikuliImporter.py”,第30行,在“加载模块返回imp.load\u模块(全名、文件、路径名、描述)文件”中,第30行,无语法错误:!!导入时!!在输入“类”(myUtilities.py,第1行)时没有可行的替代方法。

您的实用程序模块有语法错误:


在输入“类”(myUtilities.py,第1行)中没有可行的替代方案。

您的实用程序模块有语法错误:


在输入“class”(myUtilities.py,第1行)中没有可行的替代方法。

更糟的是,我没有正确创建该类的实例。我现在将其命名为:activeCheck=myUtilities.utilities()它通过init并像应该的那样调用默认函数。现在的问题是,除非我注释掉图像,否则它无法编译,有没有办法解决这个问题?再弄弄弄一点,我没有正确创建该类的实例。我现在将其称为:activeCheck=myUtilities.utilities()现在的问题是,除非我注释掉图像,否则它无法编译,有没有办法解决这个问题?