Ranorex vs Sikuli

Здравствуйте,
Подскажите пожалуйста, кто знает, что лучше использовать для автоматизации Flash приложения - Ranorex или Sikuli. Цена не имеет значения. В первую очередь интересует скорость распознавания.

В статье по Sikuli (http://groups.csail.mit.edu/uid/projects/sikuli/sikuli-uist2009.pdf) заявлена скорость распознавания 200 msec на нахождение картинки 100х100 на экране 1600х1200 для “3.2 GHz Windows PC”.
На практике у меня распознавание такой картинки в Sikuli занимает значительно больше времени. (В Ranorex пока не пробовал).

Какие еще преимущества есть у платной Ranorex над бесплатной Sikuli (если есть)?

Спасибо,
–Игорь

Ranorex лучше только когда процент точности 100. В остальных случаях сильно уступает sikuli. Проведены были тесты на поиск 13 разных картинок (некоторые отсутствовали на экране), cpu-i73770, ram-8Gb , результаты:

  1. Sikuli performance test result (similarity 70% - 29sec);
  2. Ranorex performance test result (similarity 70% - 27min 29sec).
1 лайк

Спасибо Саша. :slight_smile:

я для остальных) вдруг у кого то вопрос аналогичный будет)

тут точно нет никакой ошибки? 29 секунд и 28 минут, ну просто очень большая разница в результатах.

Если не правильно делать локатор в Ranorex, то время может быть очень большим.

Ranorex тестирует практически все: web, flash, app, mobile. Но и требует хорошего понимания xpath и программирования. Если вам нужен одноразовый кликер, то Ranorex не для вас. Ranorex хорош на тяжелых и сложных проектах.

1 лайк

А можно пример, что такое неправильный локатор и почему он аж так влияет на скорость выполнения теста?

А чем он хорошо на больших и сложных проектах? Потому что это универсальный инструмент и может делать буквально все что вам может прийти в голову?

FindSingle( “//a[@id=’_ctl0_btnView’]”);
Так как Ranorex просматривает всю систему, а не как например силениум сраницу, то при таком локаторе мы получим очень большое время поиска(зависит от кол-ва запущенных процессов), а вот силениум отработает быстро.
Вот пример более правильного локатора, хотя полный путь был бы еще лучше
“/dom[@domain=’”+ servername +"’ and @browser=’"+ titleBar + “’]//a[@id=’_ctl0_btnView’]”
Сначала мы попадаем на страницу, а потом ищем элемент

Ranorex не быстрый, но 28 мин говорит о неправильном подходе

Ranorex + мощь C# = все с этим связанное от OOP до “буквально все что вам может прийти в голову”
Любые библиотеки, доступ к ресурсам, объектам и т.п.
Это не просто записать скриптик с шагами - это мощь которая требуется на очень сложных проектах.
Например тестировать C# app с 10 разнообразных контролов(у меня например 5 типов combobox, 4 вида grid, короче большой зоопарк) и отчетов на веб в embedded IE.

Ну если, было бы 2-3 минуты, это я еще как-то понял. Просто как по мне даже неправильный локатор должен отрабатывать значительно быстрее. Я если будет мега сложный проект и там будет тысячи локаторов и вы подключите человека, который чисто по незнанию или по неосторожности внесет какой-то локатор, то что ждать поиска элементов часами?

Ну может быть, я меня знакомый тоже как-то расхваливал этот инструмент, потому что удалось его впарить заказчику и теперь он с ним поработает. Но я все таки остаюсь пр своих убеждениях и пытаюсь использовать open source

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

P.S. на некоторых этапах есть дом, и элементы окон, но в основном представте себе видео в которое можно тыкать.

Сами немного удивлены, например если точность 98% ранорекс показал себя за ~4мин 30сек, сикули ~29 сек. Вывод: процент схожести не очень важен для сикули, а для ранорекса критично.

Мда, спасибо за подсказку. Чисто из-за этой производительности очень тяжело рассматривать этот инструмент для автоматизации.