Тестирование Qt "monkey" - имитация случайных щелчков и нажатий клавиш
существует ли структура для имитации детерминированно псевдослучайной серии кликов, наложенных на приложение Qt, - чтобы попытаться вызвать любые утечки памяти, ошибки потоков и т. д. - типичное тестирование обезьян?
некоторые экзотические, обезьяна использовать для QTestLib?
2 ответов
Да, вы можете использовать полезный модуль модуль тестирования. Посмотрите, в частности, на класс QTestEventList. Просто укажите QWidget, который вы хотите протестировать, или QMainWindow или любой подкласс, который вы хотите, и добавьте список событий, которые вы хотите создать. Если вы хотите создать последовательность точек для воспроизведения в случае сбоя, используйте qsrand() и QR и().
на Squish автоматизированная платформа тестирования GUI можно использовать, чтобы сделать обезьяны щелкая в вашем приложении. Есть несколько приятных вещей об использовании Squish для этой цели:
- Squish работает на Windows, Mac, Linux и Android
- он регистрирует любые случайные шаги, которые он выполняет в качестве сценария, который можно повторно запустить (обезьяна тестирование docs)
- Он имеет возможность сделать снимок экрана при сбое приложения (скриншот настроек отказа docs)
недостатки: Squish не является бесплатным. Настройка Squish для запуска приложения может быть очень раздражающей, особенно если приложение требует определенных характеристик сборки Qt или Python.