Найти в Дзене
Linux.ru

Автотестирование графического интерфейса GTK 3 на языке Python

По не понятной причине в GTK 3 при написании программ на языке Python не работают функции для автоматического тестирования программ.

В модуле Gtk не работают функции: test_find_label(), test_find_widget() и, самая для меня критическая, test_widget_click() - для автоматического нажатия кнопок виджетов. В модуле Gdk так же не работают функции: test_simulate_button(), test_simulate_key().

Для решения этой проблемы я написал модуль gtestutils со своей реализацией этих функций:

find_widget_input_windows() - Поиск элемента взаимодействия вводного окна

find_widget_label_text() - Поиск элемента взаимодействия типа наклейки с искомым текстом

find_widget_type_func_pattern() - Поиск элемента взаимодействия по типу и по значению функции

find_widget_type_parent() - Поиск элемента взаимодействия с заданным типом, который является родителем элемента взаимодействия

find_window_type_toplevels() - Поиск элемента взаимодействия заданного типа верхнего уровня

simulate_button() - Имитация события нажатия или отпускания кнопки

simulate_key() - Имитация события нажатия или отпускания клавиши

widget_click() - Имитация нажатия элемента взаимодействия

widget_send_key() - Имитация нажатия клавиатуры на элемент взаимодействия

Ссылка на модуль: https://disk.yandex.ru/d/C8qWGd-TDpQ93Q