Daniel Verkamp: Automated regression testing

Journal Week 7

Monday, July 6

Added support for saving and loading snapshots in testsuite; this will allow semi-automated testing, as discussed with mcb30:

  • Install server components like a DHCP server and iSCSI target (manually for now) in a VM and save its state.
  • Using the framework provided by the testsuite Perl modules, load the server VM, as well as a test VM using a gPXE image from the tree.
  • Connect the VMs to a network and allow them to run (eventually with automated collection of the results).

Tuesday, July 7

Built a simple test server VM (Debian with DHCPD and Apache), saved a snapshot (named “server3” in the following script) and used it to boot a test VM with the testsuite framework:

#!/usr/bin/perl -w

use Test::Network::Vde;
use Test::Machine::Qemu;
use strict;
use warnings;

my $server = new Test::Machine::Qemu;
my $client = new Test::Machine::Qemu;

my $network = new Test::Network::Vde;

$server->hdd ( "server.hd" );
$server->nic ( { type => "pcnet", macaddr => "52:54:00:12:34:57" } );
$server->network ( $network );

$client->fdd ( "../bin/rtl8139.dsk" );
$client->nic ( { type => "rtl8139", macaddr => "52:54:00:12:34:56" } );
$client->network ( $network );

$server->load_snapshot ( "server3" );

$server->run();
$client->run();

<STDIN>;

Navigation

* [[:start|Home]] * [[:about|About our Project]] * [[:download|Download]] * [[:screenshots|Screenshots]] * Documentation * [[:howtos|HowTo Guides]] * [[:appnotes|Application Notes]] * [[:faq:|FAQs]] * [[:doc|General Doc]] * [[:talks|Videos, Talks, and Papers]] * [[:hardwareissues|Hardware Issues]] * [[:mailinglists|Mailing lists]] * [[http://support.etherboot.org/|Bugtracker]] * [[:contributing|Contributing]] * [[:editing_permission|Wiki Edit Permission]] * [[:wiki:syntax|Wiki Syntax]] * [[:contact|Contact]] * [[:relatedlinks|Related Links]] * [[:commerciallinks|Commercial Links]] * [[:acknowledgements|Acknowledgements]] * [[:logos|Logo Art]]

QR Code
QR Code soc:2009:dverkamp:journal:week7 (generated for current page)