A software compliance test is typically directed only at particular
classes in the inheritance hierarchy. Inherited APIs (classes), which are
not the focus of the test, may cause the application under test (AUT) to
fail the compliance test since some of the underlying classes differ from
a reference implementation. Accordingly, a verification tool employs the
same version and implementation of inherited APIs in the reference
implementation of these inherited APIs as the application under test. A
dynamic class loader examines class inheritance references made by the
application under test to determine if the class is included in the API
to be tested, or if the class is outside the scope of the API to be
tested. If the class corresponds to the API to be tested, then the
dynamic loader uses the reference implementation of the API for
comparison. Otherwise, the reference implementation employs the same
inherited class references as the application under test. Therefore, for
the underlying inherited or secondary class references, the dynamic
loader employs the same classes in the reference implementation as the
AUT inherits.