[Buildbot-devel] Recommendations for client / server testing

Tim Ahpee tahpee at daintree.net
Mon Jun 7 02:43:08 UTC 2010


On Wed, 2010-06-02 at 08:22 -0700, Dustin J. Mitchell wrote:
> > We're about to move into testing of the server side of openchange. Essentially
> > I want to build the source, configure the server, start the server, wait a
> > little while (or for a certain debug output line) and then run my client
> > tests. When all the tests are done, kill the server and wait for the next
> > checkin.
> >
> > Any suggestions, tips or tricks for how to best approach this?
> 
> The danger is, of course, that the server continues running forever if
> something goes wrong.
> 
> We've dealt with this in testing Amanda by adding some code to the
> daemon that kills the daemon if its stdin closes.  Then we have a
> parent process that runs the daemon as a child process with stdin held
> open, and then runs all of the tests.  If that parent process dies for
> any reason, the OS closes stdin and the daemon exits (unless it's
> hung, of course).

We handled this a little differently. One thing that is important is the
environment and install process so we take a snapshot of a virtual
machine that has the base OS installed. We make a copy of the snapshot,
boot the copy, install all the server packages and check that the
installation went correctly. Then we run the tests against the server
installed in the VM. At the end of the test we throw away the VM and
wait for the next checkin. 

We for all of the above we are using KVM under Linux (Ubuntu
specifically) to manage the VMs.

Cheers,
Tim






More information about the devel mailing list