1. A computer system comprising: one or more processors which process program instructions; a memory device connected to said one or more processors; and program instructions residing in said memory device for monitoring image variations in a user interface of a software application as a user interacts with the software application executing on the computer system, detecting a user interaction with the user interface, comparing a first image of the user interface immediately prior to the user interaction with a second image of the user interface immediately after the user interaction to identify a region of interaction related to the user interaction wherein the region of interaction is based on a change in the user interface between the first image and a second image and corresponds to a boundary of a feature of the user interface which contains an object of the user interaction, placing a marker in a user interface evolution timeline to indicate a point in time when the user interaction occurred, and storing an image of the region of interaction, a profile of change, and coordinates of the user interaction in association with the marker, the profile of change representing differences between a pre-interaction profile and a post-interaction profile wherein the pre-interaction profile and post-interaction profile contain different lists of distinctive features currently visible in the user interface.