Overview

BlackBadger is a distributed state machine, utilising the ANT scripting language for co-ordinating large numbers of machines for scheduling, deploying and running tasks.

BlackBadger was designed to solve a number of problems with respect to testing open source components in a real world production environment. Consider the following the use case:

I have a typical LAMP configuration; can I run my PHP application with all the services running on the same machine, and then compare that with an alternative configuration that places the database on a separate machine. Do I get an increase in the maximum number of users I can handle?

Let us assume you have a pool of machines, with varying operating systems installed. BlackBadger gives you the power to quickly run through the scenarios where by you can not only execute the use case, but also observe the effects of running various components on different operating systems.

BlackBadger has been designed to allow you to easily move components around without the need to continually be updating the configuration files. Play around with scenario's that involve moving the database between machines or different operating systems, and not have to keep manually updating the J2EE (or PHP application) server where the database is. This allows you to not only plan an infastructure, but also test it to see in real terms the benefits.

BlackBadger has two major parts; MasterBadger and one or more WeeBadgers. The MasterBadger is a Java SWT GUI application that controls the execution of the state machine and schedules the test file to awaiting WeeBadgers. A WeeBadger represents a single logical machine. This is a small Java console application that communicates with the MasterBadger. The MasterBadger is a conductor in an orchestra of WeeBadgers, keeping everyone in step.

Features

  • Distributed State Machine implementation
  • Java SWT UI for controlling test plans
  • Small overhead for remote agents
  • Apache ANT used as the scripting language
  • Auto discovery off agent machines
  • Operating System dependent testing
  • All console logging brought back to the controller
  • Centralised logging transport mechanism
  • Sophisticated variable lookup
  • Simple XML setup
  • Single point of configuration
  • No complicated server/client setup
  • Easy to move components around different machines

Latest News

  • October 2006 - Presentation uploaded from the NL-JUG BlackBadger introduction
  • October 2006 - Project initially released on SourceForge