1. A computer-based software testing method, comprising: presenting to a user an interactive visual user interface of an application under test that includes a plurality of user interface controls, wherein each of tile presented user interface controls has a predefined native interaction mode, intercepting nonnative pointing-device-based user interaction with each of a plurality of the user interface controls, wherein the normative pointing-device-based user interaction mode is different from the native interaction mode, building interface definitions for the application based on results of the steps of intercepting for the plurality of interface controls, and taking a snapshot of the application in response to user input, wherein the step of presenting a visual interface presents at least part of the application snapshot, and wherein the snapshot includes the interactive visual interface presented in the step of presenting, at least a partial control set, and at least a partial set of attributes for the application.