программное обеспечение для тестирования обезьян - PullRequest
6 голосов
/ 27 октября 2008

Я хотел бы провести стресс-тестирование приложения win32, отправив ему много случайных нажатий клавиш, и мне интересно, может ли кто-нибудь указать мне какое-нибудь программное обеспечение, которое я мог бы использовать. В идеале я должен быть в состоянии указать, какие нажатия клавиш можно отправлять, и контролировать скорость (случайные мин / макс).

Ответы [ 4 ]

4 голосов
/ 10 декабря 2008

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

Я использовал инструмент fuzz-nt с этого сайта для своих собственных тестов и успешно нашел несколько ошибок в нашем приложении. Он не может выбирать значения ввода с клавиатуры (но источник указан). Вместо этого он позволяет вам выбирать из следующих источников случайных данных:

  • случайные события клавиатуры
  • случайные события мыши
  • случайные события Windows (следует использовать с осторожностью или, лучше, совсем)
4 голосов
/ 27 октября 2008

Посмотрите на AutoIt. Он имеет интерфейс COM, поэтому вы можете написать его на любом языке, который поддерживает COM. Я написал скрипты Python для автоматизации графического интерфейса.

1 голос
/ 27 октября 2008

Я бы использовал макропрограмму, например AutoIt, как сказал jrbushell, или AutoHotkey. Они также допускают случайные клики ... :-) Оба бесплатны.

0 голосов
/ 27 октября 2008

Вот псевдокод (поскольку вы не упомянули используемый язык):

  • Создать массив, содержащий алфавит из a-z, A-Z, 0-9 (в зависимости от того, какие ключи вы хотите отправить)
  • для i = 0 для NumberOfKeyStrokes
  • rand ()% SizeOfArray
  • задержка для rand () миллисекунд (чем ниже диапазон, тем быстрее ход клавиш)
  • отправить через API или в виде строки

Для получения дополнительной информации об отправке нажатия клавиш приложению в Windows изучите API FindWindow и SendMessage

...