Using spare CPU cycles to help upstream projects find bugs.

John McCabe-Dansted gmatht at gmail.com
Sat Apr 16 07:59:50 UTC 2011


I have been working on software for monkey testing. The way monkey
testing works is to randomly generate keypresses until a bug is
detected. My vision is that this would allow end users to donate CPU
cycles to improve the quality of upstream software. This was inspired
by the fact that Ubuntu has a very high user to developer ratio, and
appears to need more ways to allow enthusiastic users to contribute.

This software has found over 80 bugs in the LyX project and more
recently I have also used it to find bugs in Abiword and Gnumeric. I
suspect that it could be used to find bugs in pretty bug any rich GUI
application.

The LyX developers found this bug reports quite useful as: Keytest
often finds the bug within one week of it being checked in, while it
is still fresh on their minds; Keytest does a bisect and reports the
change that caused the regression where possible; and Keytest finds
the smallest subset of the key presses needed to reproduce the bug to
provide a convenient recipe to reproduce.

It is available at:
  http://dansted.co.cc/Mon-Keytest.html

Would anyone like to have a play with this? Feel free to drop me a
mail, as it is still quite experimental. Note that although the
intention is that one day end users could use keytest, in its current
state you'd really have to be completely comfortable with compiling
software, version control, and tracking down resource hogs with top to
be able to use it.

Incidentally this is an example of a mail that sounder seems suited
for, as sounder is place that we can discuss such things without
worrying whether it e.g. technically relates to the development of
Ubuntu.

-- 
John C. McCabe-Dansted



More information about the sounder mailing list