The modern software tester uses different tools for various reasons. We can group these tools according to their purpose.
- First he uses tools to analyse the problem and define (specify) the Test Cases. These can range from a simple word-processor or spreadsheet to a more graphical based program.
- Then there are all kinds of tools to Execute Test Cases. These are written in various languages and for various scripting languages, on varying platforms.
- There are tools to generate all kinds of Quality Reports, ranging from a detailed overview of passed and failed test cases on all test-levels to a simple dashboard for an executive overview.
- And to control all activities of a test project, there is the group of management tools.
In practice, a tool may cover more than one of the above mentioned groups. But in this architecture we want to keep the groups separated.
There are 2 types of interfaces, 1 that is defined by defining the (XML) File format and the other by defining the command-line format, i.e. the parameters and options in order to start a Tool.