Software testing can b e divided into structural and
behavioral testing. In structural testing the internal structure of the code is
inspected. In behavioral testing only the input-output behavior of the code is
examined.
The TestIt framework supports behavioral testing by associating a test case
with every method in a system. The test case is also equipped with an oracle.
An oracle is a table that pairs method inputs with their expected outputs.
Running a test case feeds every oracle input to the method, then compares the
actual output with the expected output.
A test suite is associated with every class. The test suite contains the test
cases for the class's methods. Test suites are also associated with subsystems
and the system:
Testit doesn't have a user interface (yet). Instead, programmers must create and run tests by writing code. Here are a few use cases:
The Testit design combines the Composite Design Pattern and the Pluggable Adapter Pattern.
Create a Java implementation using Java reflaction.
Create a C++ Implementation using Functors.