|
An Introduction to Greenfinch |
Greenfinch is a framework for testing OGSA grid services. It has two
major functions:
- To exercise grid services by providing a scriptable client which can
call any method of the service and provide analysis of the results.
- To test complex failures in groups of cooperating services by providing
a way to test the behaviour of the individual services in response to
failures by some of the services they interact with.
|
The Greenfinch Client |
The Greenfinch client is a highly extensible scripted application written
in Java. The client reads XML configuration files which specify the tasks needed
to initialise the environment before testing can begin, then a series of
invocations which the client should make. The results of these invocations
can be run through any external program and the results logged or displayed
to screen. Arbitrarily many analysis programs may be run against any given
run, each logging its output to a separate file. In addition, there exists
the potential to provide internal plugins, in the form of Java classes,
which have access to a full set of information about the run.
|
Creating Services that Fail |
Complex grid services interact with other services during their
execution. Testing their behaviour when these other services are
unreliable is difficult, firstly because of the large number of
possible scenarios that can occur, and secondly because creating
purpose built services that fail predictably enough to be used for
testing is difficult and time consuming. Greenfinch provides the
ability to augment existing services with predictable failure
behaviour, the ability to create "fake" services without a real
implementation which will fail in a predictable fashion and an API for
developing other services with the same predictable failure
capabilities.
| |