A method of automatically generating tests for a software program based on
metadata that is used to control the operational behavior of a software
product is disclosed. A definition is received of a page hierarchy and
security characteristics associated with the software program and
representing output pages that are generated by the program in operation.
The definition is parsed to identify information associated with one or
more pages of the program. Automatically, instructions in a test language
are generated. The instructions, when executed by a testing system, cause
the testing system to perform the steps of: navigating through the page
hierarchy and displaying each of the pages; determining whether each of
the pages is properly displayed by the program; and generating output
indicating whether each of the pages is properly displayed.