Qt "Обезьяна" Тестирование - симуляция случайных кликов и нажатий клавиш

Есть ли основа для имитации детерминистски псевдослучайной серии кликов, наложенных на приложение Qt - чтобы попытаться вызвать любые утечки памяти, ошибки многопоточности и т. Д. - типичное тестирование на обезьянах?

Какая-то экзотическая обезьяна, используемая для QTestLib?

2 ответа

Решение

Да, вы можете использовать полезный модуль модульного тестирования. Посмотрите, в частности, на класс QTestEventList. Просто предоставьте QWidget, который вы хотите протестировать, или QMainWindow или любой другой подкласс, который вы хотите, и добавьте список событий, которые вы хотите сгенерировать. Если вы хотите сгенерировать последовательность точек для воспроизведения в случае сбоя, используйте qsrand() и qrand().

Среду автоматизированного тестирования графического интерфейса Squish можно использовать для щелчка мышью в вашем приложении. Есть несколько хороших вещей об использовании Squish для этой цели:

Недостатки: сквош не бесплатный. Настройка Squish для запуска вашего приложения может быть очень раздражающей, особенно если вашему приложению требуются определенные характеристики сборки Qt или Python.

Другие вопросы по тегам