Как использовать Sikuli для тестирования Android?

Я тестирую приложение для Android с Sikuli, но каждый раз, когда тест запускается, поведение меняется:

  • тест останавливается на первой команде, не находя первое изображение
  • находит только некоторые изображения, и тест останавливается на определенном изображении, которое не найдено
  • находит все изображения, и тест проходит успешно

Вот пример теста и одно из его действий при запуске.

Sikuli работает на Windows 7. Кто-нибудь знает, это проблема фокуса или что-то еще и как ее решить?

Спасибо


person blavi    schedule 12.09.2012    source источник


Ответы (4)


Возможно, вы сможете решить проблему с распознаванием, изменив уровень соответствия. Из Сикули Гуи:

  • Нажмите на изображение
  • В разделе «Настройки шаблона» > «Предварительный просмотр сопоставления» перетащите полосу сходства на значение ниже 1,0 (попробуйте другие значения).
person Orabîg    schedule 12.09.2012
comment
Иногда, независимо от того, как я устанавливаю соответствующее значение, оно все равно не находит изображение. Бывает, что находит его в Matching Preview и не находит при запуске теста или даже не находит в Matching Preview. - person blavi; 14.09.2012
comment
вы нашли исправление для этого @blavi - person dazza5000; 24.04.2019

Вам также может понадобиться добавить задержку для появления кнопки просмотра на экране. Вы можете попробовать что-то вроде этого

wait("Browse.png", 10 )  # Wait for up to 10s for the app to load

Вы также можете попробовать увеличить размер изображения, с которым вы сопоставляетесь. Попробуйте включить близлежащие артефакты. Помните, что вы можете изменить положение на изображении, которое является точкой щелчка мыши, если ваша кнопка «Обзор» не находится в мертвой точке.

person spearson    schedule 12.09.2012
comment
Тест также не работает при ожидании, не находя изображение. - person blavi; 14.09.2012

Вы можете попробовать любое действие щелчка дважды, используя блок try/except. Иногда алгоритм зрения просто дает сбой.

person Alessandro Da Rugna    schedule 13.09.2012

Запуск эмулятора Android (для чего угодно) очень медленный и произвольный.

Таким образом, с Android ems стоит сделать заявления Sikuli немного «умнее», например:

подождите(browsebutton.png, 20)

onAppear(browsebutton.png, щелчок(browsebutton.png))

Выглядит более загруженным, но делает скрипт «умным» как в ожидании кнопки, так и в щелчке по ней, как только она появляется (вместо того, чтобы ждать двадцать секунд, если она появляется через пять).

person HAL-9000    schedule 30.01.2013