Запустите существующее приложение Cocoa с помощью скрипта Python

Я пытаюсь научиться использовать python и pyObjC для автоматизации тестирования приложений для нашей базы кода Cocoa -Objective C.

Я нашел множество примеров того, как воссоздать целевое приложение C с использованием pyObjC, однако это включает в себя буквальное переписывание приложения на python с использованием целевых фреймворков и классов C. Я не могу найти никаких примеров выполнения приложений или компонентов Какао с python или pyObjC.

У меня есть пользовательские рамки. Он содержит WindowController, который является точкой входа для редактора. Когда я инициализирую это в приложении какао и нажимаю кнопку, она появляется, и я могу взаимодействовать с ней.

Следуя приведенному здесь примеру, примеру pyObjC, я могу успешно инициализировать свой оконный контроллер и заставить его появиться, однако я не могу взаимодействовать ни с одним элементом управления, включая кнопку закрытия окна.

Мой фрагмент:

#!/usr/bin/env python

# Opens the Window

import time
from Foundation import *

bundle = NSBundle.bundleWithPath_('/Library/Frameworks/MyFramework.framework')
controller = bundle.classNamed_('MyController').alloc().initWithWindowNibName_('MyWindow')
controller.showWindow_(0)

# Hold the window open for a bit
time.sleep(20.0)

Я также попытался добавить:

from AppKit import *
NSApplicationLoad()
True

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

Моя цель здесь не состоит в том, чтобы переписать Objective C, используя python. Это поможет нашим специалистам по QA автоматизировать некоторые межприкладные тесты.

Любое руководство приветствуется.

0 ответов

Другие вопросы по тегам