Automatic exploration and testing of dynamic Web sites
First Claim
1. A method for use in the exploration and testing of Web sites including the steps of:
- systematically exploring a dynamic Web site, said Web site including one or more dynamically generated Web pages;
includingdetermining possible user actions that may be performed in a Web page,determining if any of said user actions correspond to at least one form,if so, automatically generating user values to populate said at least one form,automatically and systematically executing said determined user actions, andtesting results of said execution for errors;
wherein said step of automatically generating user values to populate said at least one form further comprises;
determining a form schema;
identifying at least one signature that matches the determined form schema;
selecting one or more predetermined profiles associated with the identified signature(s);
utilizing the selected predetermined profile(s) to generate one or more candidate form completions; and
utilizing said candidate form completion(s) to provide said user values;
the method further including initializing exploration from a predetermined initial uniform resource locator (URL), discovering and executing user actions, storing said executed user actions, storing states that have been explored, detecting when either a prescribed state space depth is reached or that an error has been detected, and as a result of said detecting, re-initializing said exploration from said predetermined initial URL.
8 Assignments
0 Petitions
Accused Products
Abstract
A unique tool, i.e., “VeriWeb”, is employed to automatically discover and systematically explore Web-site execution paths that can be followed by a user in a Web application. Unlike traditional spiders (or crawlers) that are limited to the exploration of static links, VeriWeb can navigate automatically through dynamic components of Web sites, including form submissions and execution of client-side scripts. Whenever examining a new Web page, the system determines all possible actions a user might perform—be it a link, via a button with a JavaScript handler, or via form submission—and can execute them in a systematic way. In order to systematically test different paths in a Web site, VeriWeb addresses two critical problems: systematic Web site exploration and automatically filling out forms.
104 Citations
4 Claims
-
1. A method for use in the exploration and testing of Web sites including the steps of:
-
systematically exploring a dynamic Web site, said Web site including one or more dynamically generated Web pages;
includingdetermining possible user actions that may be performed in a Web page, determining if any of said user actions correspond to at least one form, if so, automatically generating user values to populate said at least one form, automatically and systematically executing said determined user actions, and testing results of said execution for errors; wherein said step of automatically generating user values to populate said at least one form further comprises; determining a form schema; identifying at least one signature that matches the determined form schema; selecting one or more predetermined profiles associated with the identified signature(s); utilizing the selected predetermined profile(s) to generate one or more candidate form completions; and utilizing said candidate form completion(s) to provide said user values; the method further including initializing exploration from a predetermined initial uniform resource locator (URL), discovering and executing user actions, storing said executed user actions, storing states that have been explored, detecting when either a prescribed state space depth is reached or that an error has been detected, and as a result of said detecting, re-initializing said exploration from said predetermined initial URL.
-
-
2. A method for use in the exploration and testing of Web sites including the steps of:
-
systematically exploring a dynamic Web site, said Web site including one or more dynamically generated Web pages;
includingdetermining possible user actions that may be performed in a Web page, determining if any of said user actions correspond to at least one form, if so, automatically generating user values to populate said at least one form, automatically and systematically executing said determined user actions, and testing results of said execution for errors; wherein said step of automatically generating user values to populate said at least one form further comprises; determining a form schema; identifying at least one signature that matches the determined form schema; selecting one or more predetermined profiles associated with the identified signature(s); utilizing the selected predetermined profile(s) to generate one or more candidate form completions; and utilizing said candidate form completion(s) to provide said user values; wherein said step of automatically generating user values includes performing a form analysis to generate a form schema, employing said form schema and profiles from an active profile list to match said form to a data model and to generate a set of partial matches, selecting a match from said set of partial matches, for said selected match generating a set of completions, and selecting a completion from said set, thereby completing said form.
-
-
3. A method for use in the exploration and testing of Web sites including the steps of:
-
systematically exploring a dynamic Web site, said Web site including one or more dynamically generated Web pages;
includingdetermining possible user actions that may be performed in a Web page, determining if any of said user actions correspond to at least one form, if so, automatically generating user values to populate said at least one form, automatically and systematically executing said determined user actions, and testing results of said execution for errors; wherein said step of automatically generating user values to populate said at least one form further comprises; determining a form schema; identifying at least one signature that matches the determined form schema; selecting one or more predetermined profiles associated with the identified signature(s); utilizing the selected predetermined profile(s) to generate one or more candidate form completions; and utilizing said candidate form completion(s) to provide said user values; wherein when an error is detected while exploring a Web site a scenario defining a state-space path from an initial Web page to the error is stored for later use as desired. - View Dependent Claims (4)
-
Specification