Подтвердить что ты не робот

Какой лучший инструмент, чем Sikuli для автоматизации экрана в Windows 7 (или, желательно, многоплатформенный)

Я использую Sikuli для автоматизации экрана. i.e для щелчка элементов GUI в соответствии с их внешним видом на экране. Это работает хорошо, но у Сикули есть один главный недостаток для меня:

  • Медленный запуск для каждого script (поскольку вся JVM загружается каждый раз).

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

Любое предложение для более быстрого и, возможно, лучшего поддерживаемого инструмента, чем Sikuli?

4b9b3361

Ответ 1

Если вы хотите автоматизировать что-либо в Windows, я бы рекомендовал вам Automa - новый инструмент автоматизации облегченного графического интерфейса. Он просто "находит" элементы пользовательского интерфейса - все, что вам нужно сделать, - это предоставить свои имена, как только их увидит пользователь. И это на самом деле проще в использовании, чем Sikuli - у вас нет скриншотов. Например, если вы хотите автоматически войти в Windows Live Messenger, вы можете запустить следующий script:

start("messenger")
write("[email protected]", into="Email address")
write("secret", into="Password")
click("Sign in")

или, аналогично, чтобы ввести учетные данные и автоматически войти в Facebook, все, что вам нужно сделать, это выполнить следующие команды:

start("firefox")
write("facebook.com", into="Location")
press(ENTER)
write("[email protected]", into="Email or Phone")
write("secret", into="Password")
click("Log in")

Инструмент работает на большинстве приложений Windows (включая веб-браузеры), независимо от того, в какой технологии они написаны. Он написан на Python и может использоваться из любого приложения Python через импортированную библиотеку api.

О Automa vs Sikuli: Automa имеет такой высокий уровень, как Sikuli, но не требует скриншотов. Это имеет несколько преимуществ:

  • Скрипты Automa легче хранить в системе управления версиями.
  • Автоматические скрипты, являющиеся чисто текстовыми, облегчают их поддержку: представьте, что где-то меняет ярлык. Этот ярлык может появляться в нескольких скриншотах Sikuli, которые вам придется повторно взять. С Automa все, что вам нужно сделать, это простой поиск и замена файлов.
  • Он более стабилен в отношении изменений в пользовательском интерфейсе - представьте себе изменение цвета или кнопку, перемещающуюся всего на несколько пикселей.
  • Другие приятные функции, такие как возможность записи сценариев/тестов перед приложением, вы всегда можете написать script, говорящий "здесь", введите это, нажмите "там", уже из спецификации функции/программа. С скриншотами это невозможно.

Раскрытие: я работаю над Automa.

Ответ 2

Вы хотите автоматизировать приложения WinForms или приложения WPF? Если вы смотрите на WPF, я могу порекомендовать бесплатную тестовую платформу Telerik. (Раскрытие информации: Я являюсь евангелистом Test Studio для Telerik.)

Структура тестирования (или полный продукт Test Studio) очень хорошо работает с WPF, поскольку сценарии/тесты основаны на элементах, а не позиционном.

Ответ 3

Несмотря на то, что он не нацелен непосредственно на средство автоматизации Windows RIATest, в нем есть функции для автоматизации элементов Windows GUI. Он имеет доступ к экрану, имеет доступ ко всей иерархии графического интерфейса с помощью Windows UI Automation и поддерживает автоматизацию с точки зрения логических элементов GUI, а также через изображения на экране элемента.

Для примера script о том, как делается автоматизация элементов GUI Windows и как выглядят сценарии, см. в этой статье ( статья о приложении Silverlight, но применима к любой автоматизации Windows GUI).

ОБНОВЛЕНИЕ: RIATest 6.0 и новее непосредственно нацелены в качестве инструмента автоматизации Windows. Вы можете автоматизировать приложения рабочего стола и Metro.

Раскрытие информации: Я член команды RIATest, и мы успешно используем RIATest для самотестирования собственного графического интерфейса.