Overview
Well-written software typically has hundreds or thousands of
automated tests. The tests are run as part of the build process
and any failure indicates broken software. Developers typically
assume that a program that passes all of its own tests is working
correctly. Unfortunately, when the program is executed by end-users,
differences in the environment in which the program runs often
uncover new problems .
Ideally, developers would like every end-user to be able to
exhaustively test programs on their own systems. Unfortunately,
this would require the end-users to have access to the program's
source code and would also require them to install development
tools. The latter is out of the question for most end-users (if
development tools are even available on their platform), and the
former is out of the question for many developers.
The blueberry package attempts to
solve this problem by implementing a system that allows
non-technical users to participate in unit testing without having
access to source code and without having to install any development
tools.