Сложности тестирования GUI десктопного ПО в Robot-Framework

:slightly_smiling_face: Спасибо!

Я бы рекомендовал сейчас не мучить Робота, а попробовать ваше приложение с “голым” АвтоИТом.

C Autoit’ом приложение более-менее работает (в смысле - тесты пишутся). Единственное, что не совсем понятно, как “достукиваться” до отдельных элементов: комбобосы, выбор из выпадающего списка - одним словом, до гуевых элементов. Точнее, используя виндовый инспектор, до некоторых все же удается достучаться, но не всех. Жаль у Autoitа нет поддержки Record-Play, как например, у Ranorex’a и встроенного мапинга, а “Фокус” на GUI элементах (поля, кнопки и пр.) не всегда подсвечивается…

Это не только Win32 API, pywinauto умеет и UI Automation API под капотом (на выбор из двух бэкендов на данный момент). И в отличие от Winium у pywinauto есть мейнтейнеры (я один из них). Если приложение Qt5, то шансы с pywinauto достаточно высокие что-то увидеть из элементов. Вот с Qt4 не особо, как правило. Но это и с другими инструментами непросто.

А что касается AutoIt, то у них вообще свой доморощенный язык по типу Basic, хотя и есть pyautoit обвязка на питоне, но UI Automation API (а значит, и все современные приложения) AutoIt не умеет из коробки.

Друзья, всем огромное спасибо за отклики! Со временем опять вернулся к Robot-Framework совместно с Autoit’ом для тестирования GUI на десктопном приложении. На самый первый мой вопрос помогла банальная переустановка новой версии самого Autoit’а. И воспользовался прекрасной инструкцией по установке RF от Joonas Venäläinen, большое ему спасибо: Desktop Application Automation With Robot Framework | by Joonas Venäläinen | Medium . Коллеги, подскажите, если кто сталкивался с такой проблемой - как настроить RIDE, чтобы можно было просматривать русский текст (с латиницей проблем нет), отправленный функцией Send. Т.е., в Test Cases сначала запускаем блокнот (Run ${Notepad}), затем - ждем пока он откроется (WinWaitActive new 1 - Notepad++) и далее - отправляем в блокнот текст (Send Hello, Robot!). Так вот возникли трудности с отправкой текста на русском языке. Подскажите, как решается такой вопрос?! Заранее, спасибо!!!

Вопрос снимаю, из-за невнимательности (выбирал не ту cmd) тест не запускался, если отправлять сообщение на русском. Теперь все работает! :-)))