1. A computing device-implemented method comprising: receiving, by the computing device, a target application for which a training application is to be generated; extracting, by the computing device, programmatic elements and associated properties of the target application; identifying, by the computing device, ones of the extracted elements that affect a first user interface of the target application; receiving, by the computing device, programmatic elements not extracted from the target application, and associated training parameters; storing, by the computing device, the identified elements and the received elements as user interface elements; generating, based on the associated training parameters, a set of training rules corresponding to the user interface elements, wherein the training rules differ from the associated properties; and generating, by the computing device, the training application using at least some of the user interface elements, via which the training rules are configured to present portions of a second user interface corresponding to the target application responsive to input received from a user interacting with the training application, wherein the first and second user interfaces differ.