2 Automating Test Catalogs

I believe that much of the basic, skeletal work described in Section 1 can be delegated to a toolset which will automatically analyze code and code specifications given in a strict format, and produce skeleton test requirements and specifications which can then be fleshed out by a human test designer. Furthermore, this toolset would be a part of a round-trip process in which new idioms, discovered during test set design for a subsystem, can be entered into the test catalog for use in later test designs.

In summary, though much of test design and maintenance must be done by a human designer possessed of intuition and speculative ability, there is an awful lot of "grunt" work and logical, rule-based maintenance that can be automated, leaving the human to handle exceptional cases.

Since Java, Python, and other modern languages are easily parsable both in source form and in their intermediate "binary" representations (ie: bytecode), and often have built-in reflection capabilities, we should be easily able to build tools that will sketch out a skeleton set of test requirements, test specifications, and even test code for an application built in one of these environments.