NameError: имя 'Logi' не определено с Sikuli - PullRequest
0 голосов
/ 20 июля 2011

Я просто пробую Sikuli.Я пытаюсь создать "главную" страницу, которая вызывает другие файлы, содержащие некоторые классы и некоторые определения.Но я получаю следующую ошибку:

[ошибка] Arrêté [ошибка] Une erreur est survenue à la ligne 13 [ошибка] Сообщение d'erreur: обратная связь (последний вызов был последним): файл "C: \ Users \gregory \ AppData \ Local \ Temp \ sikuli-tmp2607956245912033896.py ", строка 13, в log = Logi () NameError: имя 'Logi' не определено

Не знаю, почему.

Мой код

main.sikuli

# Path to def
myScriptPath = "C:\\NOT_SCANNED\\Stockage\\SikuliProject\\"

if not myScriptPath in sys.path: sys.path.append(myScriptPath)

# Import File.sikuli
from loginLogout import *
from sikuli.Sikuli import *

# Call Def
if __name__ == "__main__":
    log = Logi()
    log.login()
    log.logout()

loginLogout.sikuli

from sikuli.Sikuli import *

class Logi:
def login(self):
    openApp("MyApp")
    wait(5)
    type("demo" + Key.TAB + "demo" + Key.TAB)
    type("a", KEY_CTRL)
    type("localhost")
    click( )
    wait(5)
    wait( )

Я заметил кое-что.ЕСЛИ Я назвал свой класс, он работает.Я не очень понимаю.

Заранее спасибо за вашу помощь.


ОК, я кое-что нашел.Я сделал что-то не так с именами моих файлов.Кажется, проблема была решена с сохранением, и теперь у меня больше нет этой проблемы.Но у меня есть еще один.Теперь я не получил никакой ошибки при выполнении, но ничего не выполняется ...

Новый код:

main

# -*-coding:Latin-1 -*

   # Path to def
   myScriptPath = "C:\\NOT_SCANNED\\Stockage\\SikuliProject"

   if not myScriptPath in sys.path: sys.path.append(myScriptPath)

   # Import File.sikuli from sikuli.Sikuli import * from Logi import *

   # Call Def
   if __name__ == "__main__":   
    log = Logi()
    log.login

Logi

from sikuli.Sikuli import *

class Logi:

  def login(self):
    openApp("MYAPP")
    wait(5)
    type("demo" + Key.TAB + "demo" + Key.TAB)
    type("a", KEY_CTRL)
    type("localhost")
    click( )
    wait(5)
    wait( )

  def logout(self):
    click( )
    wait( )
    click( )

  def openNewTab(self):
    click( )

  def createNewSingle(self):
    click( )
    click( )
    rightClick( )
    click( )
    click( )
    wait( )
    click( )
    type("test")
    click( )
    type("this is a test with Sikuli")
    click( )
    rightClick( )
    click( )
    click( )
    wait( )
    click( )

Заранее спасибо за помощь:)

1 Ответ

0 голосов
/ 05 мая 2012

Вы добавили путь к сценарию, но не сам сценарий. В ваш главный добавить:

import Logi
reload(Logi)
...