High-level Automated System Test Environment Terminology
Haste uses these items to automate the application under test.
Pilots
Pilot interfaces wrap the complex behavior of GUI components into simpler interfaces that, together with a specific GUI manipulation toolkit, allow for test step classes to be written at a more abstract level. Each Pilot has a one-to-one relationship with a particular class of GUI component. A pilot can perform an action: clickItem() or typeString("hi").
Droids
A Droid is a Robot with higher level methods. It includes timing issues that synchronizes with the Swing event queue.
Narcs
A Narc, short for Narcitecture, is a help object used for testing only. Its purpose is to allow access to private data so that testing is easier. This is better than simply accessing the data directly because it operates at a higher level: a single narc can allow one to verify the state of multiple objects. That is, a narc is used in system testing to determine the state of the whole system.
NarcGenerator
The NarcGenerator was created to make writing narc classes simpler. It is a simple utility that can automatically generate a Java source file containing a narc. The generated class will have get methods for every member of the narcified class.
Interface Implementor
The other useful utility is the Interface Implementor. It can be used to generate do-nothing implementations of any Java interface. When run, it will read in the specified interface and generate a new class with empty methods for every method specified by the interface. You can subclass the generated class and only implement the methods you need. This can be extremely useful when implementing large interfaces, such as the Node interface in DOM parsers for XML.